MySQL fournit une fonctionnalité merveilleuse qui vous permet d'importer un fichier CSV directement, en une seule requête.
La commande SQL que vous recherchez est LOAD DATA INFILE
Page de manuel ici :http://dev.mysql.com /doc/refman/5.1/en/load-data.html
Exemple rapide :
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)
);
C'est un exemple assez basique, mais il couvre la plupart de ce que vous voudriez. La page de manuel donne tous les détails sur la façon de faire des choses très complexes avec.
J'espère que ça aide.