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

Comment importer un fichier CSV dans une table MySQL

Au lieu d'écrire un script pour extraire des informations d'un fichier CSV, vous pouvez lier MYSQL directement à celui-ci et télécharger les informations à l'aide de la syntaxe SQL suivante.

Pour importer un fichier Excel dans MySQL, exportez-le d'abord sous forme de fichier CSV. Supprimez les en-têtes CSV du fichier CSV généré ainsi que les données vides qu'Excel peut avoir placées à la fin du fichier CSV.

Vous pouvez ensuite l'importer dans une table MySQL en exécutant :

load data local infile 'uniq.csv' into table tblUniq fields terminated by ','
  enclosed by '"'
  lines terminated by '\n'
    (uniqName, uniqCity, uniqComments)

comme lu sur :Importer le fichier CSV directement dans MySQL

MODIFIER

Pour votre cas, vous devrez d'abord écrire un interpréteur, pour trouver la première ligne et les attribuer comme noms de colonne.

EDIT-2

À partir de la documentation MySQL sur LOAD DATA syntaxe :

Le IGNORE number LINES L'option peut être utilisée pour ignorer les lignes au début du fichier. Par exemple, vous pouvez utiliser IGNORE 1 LINES pour ignorer une première ligne d'en-tête contenant des noms de colonnes :

LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test IGNORE 1 LINES;

Par conséquent, vous pouvez utiliser l'instruction suivante :

LOAD DATA LOCAL INFILE 'uniq.csv'
INTO TABLE tblUniq
FIELDS TERMINATED BY ','
    ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(uniqName, uniqCity, uniqComments)