Invece di scrivere uno script per estrarre informazioni da un file CSV, puoi collegare MYSQL direttamente ad esso e caricare le informazioni utilizzando la seguente sintassi SQL.
Per importare un file Excel in MySQL, prima esportalo come file CSV. Rimuovi le intestazioni CSV dal file CSV generato insieme ai dati vuoti che Excel potrebbe aver inserito alla fine del file CSV.
Puoi quindi importarlo in una tabella MySQL eseguendo:
load data local infile 'uniq.csv' into table tblUniq fields terminated by ','
enclosed by '"'
lines terminated by '\n'
(uniqName, uniqCity, uniqComments)
come letto:Importa il file CSV direttamente in MySQL
MODIFICA
Nel tuo caso, dovrai prima scrivere un interprete, per trovare la prima riga e assegnarli come nomi di colonna.
EDIT-2
Dai documenti MySQL su LOAD DATA
sintassi
:
Il IGNORE number LINES
L'opzione può essere usata per ignorare le righe all'inizio del file. Ad esempio, puoi utilizzare IGNORE 1 LINES
per saltare una riga di intestazione iniziale contenente i nomi di colonna:
LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test IGNORE 1 LINES;
Pertanto, puoi utilizzare la seguente istruzione:
LOAD DATA LOCAL INFILE 'uniq.csv'
INTO TABLE tblUniq
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(uniqName, uniqCity, uniqComments)