Bonjour à toutes et à tous,
Je sais, en lisant le titre vous vous dites 'encore cette commande !'. Et oui, et j'ai parcouru le forum sans trouver de réponse à mon pb que voici :
Il faut que je récupère quotidiennement des données à partir d'un fichier CSV. Pour cela, je me suis dit que j'allais faire un petit batch, histoire d'être tranquille. J'ai commencé par écrire et tester ma requête sur EMS MySQL manager (très bon outil d'ailleurs), et tout fonctionne correctement, les données s'intègre, pas de pb.
J'écris mon batch et voilà que j'ai une erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Sql: LOAD DATA INFILE 'C:\\Documents and Settings\\mondossier\\ExportEDIEntete.csv'
Pas content, je vérifie la syntaxe, et relance la requete à l'aide de l'outil fournit par MySQL - MySQL Query Browser. Et là patatrac tout fonctionne à nouveau correctement.
Voici la requete en question :
Pour aujourd'hui j'abandonne histoire d'avoir un peu de recul, cependant si quelqu'un peut me dire où se situe l'erreur, je serai très content.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 LOAD DATA INFILE 'C:\\Documents and Settings\\mondossier\\ExportEDIEntete.csv' INTO TABLE importedi FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (Entreprise,NumeroFacture,NumeroCommande,DateFacturation,CodeClient,NomLivraisonClient, AdresseLivraisonClient,CodePostalLivraisonClient,VilleLivraisonClient,PaysClientLivraison, PaysClientLivraison2,CodeDevise,CodeConditionLivraison,LieuConditionLivraison,TotalArticles, TotalFrais,TotalDeduction,NetAPayer,TotalPoidsNet,TotalPoidBrut,TotalVolume,TotalColis, NbLigneFacture,FlagCEE,NatureTransaction,PaysOrigine,ModeTransportFrontiere, NationaliteTransportFrontiere,ModeTransportInterieur,IndexConteneur,IdentiteTransport, IdentiteTransportDepart,BureauSortieEntree,AutorisationEntreeRegimeEconomique, AutorisationSortieRegimeEconomique) SET DateExtraction = DATE(Now())
Petits détails qui peuvent êtres utiles :
- Mon compte a le privilège FILE, il a d'ailleurs tous les privilèges puisque je suis sur une base de test en local.
- Le fichier à importer a les droits d'accès en lecture pour tous les utilisateurs.
- Le problème persiste même si je déplace le fichier à importer dans le répertoire de la base de données.
- La version de MySQL est la suivante : 5.0.51b-community-nt
D'avance merci.
@+
Partager