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 utiliserIGNORE 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)