-
import de fichier csv
Bonjour,
Ma question peut paraitre stupide (et jespere comme ça j'aurais une réponse :lol:)
En fait je voudrais importer des données d'un fichier csv vers une base avec laquelle je communique par l'intermediaire de java.
Mais je voudrais éviter de passer en revue chaque ligne pour faire un insert into (fichier gros et donc import trop conteu en temps).
J'ai essayer la commande 'load data infile...'
dans un java.sql.Statement.executeUpdate() sans succès.
Je ne sais pas si le fichier doit etre sur mon poste ou sur le serveur ou s'il existe une autre solution que cette commande...
Merci d'avance !
Gaetan
-
la commande "load data infile" a toutes les chance de n'etre reconnue que par l'application SQL fournie avec la DB, elle n'est probablement pas gérée directement par le serveur. vous allez devoir lire les lignes du fichier et faire des insert au fur et à mesure.
A noter qu'avec un preparedStatement, ca ne devrait pas être si lent que ça. Et que de toutes facons, il est vraissemblable que la ligne de commande SQL fasse exactement la meme chose quand vous faite un load data.
-
D'accord merci je comprends mieux maintenant !
-
Je dirais même plus "addBatch", histoire d'envoyer les commandes par flots
C'est surtout là qu'on gagne du temps. J'ai remarqué un rapport x5 sur des insertions en masse via le mode "embedded" de MySQL en Ruby pour un projet d'indexation textuelle.