Mysql
 sql >> Base de données >  >> RDS >> Mysql

Importation de données CSV avec PHP/MySQL

J'ai répondu à une question pratiquement identique l'autre jour : Enregistrer les fichiers CSV dans la base de données mysql

MySQL a une fonctionnalité LOAD DATA INFILE , ce qui lui permet d'importer un fichier CSV directement dans une seule requête SQL, sans avoir besoin qu'il soit traité en boucle via votre programme PHP.

Exemple simple :

<?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);
?>

C'est aussi simple que cela.

Pas de boucles, pas de chichi. Et beaucoup beaucoup plus rapide que de l'analyser en PHP.

Page de manuel MySQL ici :http://dev.mysql. com/doc/refman/5.1/en/load-data.html

J'espère que ça aide