MySQL offre una meravigliosa funzionalità che ti consente di importare direttamente un file CSV, in un'unica query.
Il comando SQL che stai cercando è LOAD DATA INFILE
Pagina manuale qui:http://dev.mysql.com /doc/refman/5.1/en/load-data.html
Esempio veloce:
LOAD DATA INFILE 'fileName'
INTO TABLE tableName
FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(
field1,
field2,
field3,
@variable1,
@variable2,
etc
)
set
(
field4 = concat(@variable1,@variable2)
);
Questo è un esempio abbastanza semplice, ma copre la maggior parte di ciò che vorresti. La pagina di manuale fornisce tutti i dettagli su come fare alcune cose molto complesse con esso.
Spero di esserti stato d'aiuto.