sql >> Databasteknik >  >> RDS >> Mysql

Importera CSV-data med PHP/MySQL

Jag svarade på en praktiskt taget identisk fråga häromdagen: Spara CSV-filer i mysql-databasen

MySQL har en funktion LOAD DATA INFILE , vilket gör att den kan importera en CSV-fil direkt i en enda SQL-fråga, utan att den behöver bearbetas i en loop via ditt PHP-program alls.

Enkelt exempel:

<?php
$query = <<<eof
    LOAD DATA INFILE '$fileName'
     INTO TABLE tableName
     FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
     LINES TERMINATED BY '\n'
    (field1,field2,field3,etc)
eof;

$db->query($query);
?>

Så enkelt är det.

Inga loopar, inget krångel. Och mycket mycket snabbare än att analysera det i PHP.

MySQL manualsida här:http://dev.mysql. com/doc/refman/5.1/en/load-data.html

Hoppas det hjälper



  1. SQL Server Error 113:Saknar slutkommentarmärke '*/'

  2. Distribuera Django till Heroku (Psycopg2-fel)

  3. Fråga för att bara hämta siffror från en sträng

  4. Återställ databas från nödläge i SQL Server