Besoin d'aide pour la fonction "LOAD DATA INFILE" [mySQL] - SQL/NoSQL - Programmation
Marsh Posté le 27-07-2004 à 17:07:30
4.0.15 n'est pas la dernière version
Marsh Posté le 27-07-2004 à 17:18:04
Ah bon ? EasyPhp n'est pas à jour donc ? Mais ça ne m'explique pas mon erreur. Je vois pas comment une fonction qui est documentée dans la version que j'ai peut ne pas exister. Y a un problème quand même là.
Marsh Posté le 27-07-2004 à 17:21:19
easyPhp n'est non seulement pas à jour, mais en plus ça crée que des problèmes....
je ne peux que tu conseille ceci : http://forum.hardware.fr/forum2.ph [...] 943&cat=10
sinon, tu as regardé dans la doc en ligne?
Marsh Posté le 27-07-2004 à 17:27:15
Ok merci. Pour moi l'intérêt d'Easyphp est qu'il intègre tout (Apache, mysql, phpmyadmin, etc.).
J'ai regardé la doc en ligne (pas claire pour un sous ceci dit). C'est justement dans cette doc que j'ai trouvé le post d'un gars qui explique comment importer facilement un txt dans une table. Le hic c'est que je fais la même chose et ça ne marche pas chez moi.
http://dev.mysql.com/doc/mysql/en/LOAD_DATA.html
Citation : LOAD command is easiest done without any fancy script writing or code. Comma (or someother) delimited file needed |
Marsh Posté le 27-07-2004 à 21:04:15
Ça y est j'ai finalement trouvé : il fallait décocher la case DATA LOCAL (cochée par défaut) et cocher la case DATA à la place, comme sur cette capture.
J'ai également buté sur le fait que mysql ne voulait pas importer de fichier txt au format UNICODE. En convertissant au format ANSI c'est passé tout seul. Mon fichier contenait plus de 20.000 entrée, apparemment ça ne passe pas non plus. En créant un fichier par bloc de 10.000 c'est passé. En tout cas le traitement est vraiment rapide : moins de 0,5 sec. pour traiter un txt de 10.000 lignes et 20 colonnes
Y a moyen d'utiliser l'unicode avec mysql? Je paume pas mal de caractères dans l'affaire, j'aimerais bien les garder.
Marsh Posté le 27-07-2004 à 16:34:24
Salut les gens,
Je fais mes premiers pas en php/mySQL, et je rencontre quelques soucis pour importer un fichier txt dans une table à l'intérieur d'une bdd.
J'utilise pour cela l'option "Insérer des données provenant d'un fichier texte dans la table". Le fichier txt en question contient des colonnes délimitées par des tabs et des lignes délimitées par des retours charriot. Le champs de texte ne sont délimités par aucun caractère particulier (en dehors des tabs). Donc je choisis les options en conséquence, valide, et voici ce que j'obtiens :
Base de données collection audio - Table collection_audio sur le serveur localhost
Erreur
requête SQL :
LOAD DATA LOCAL INFILE 'F:\\Program Files\\EasyPHP1-7\\tmp\\php5E9.tmp' INTO TABLE `collection_audio` FIELDS TERMINATED BY '\t' ESCAPED BY '\\' LINES TERMINATED BY '\r'
MySQL a répondu:
#1148 - Cette commande n'existe pas dans cette version de MySQL
[Documentation] · [Retour]
Comment je dois interpréter ce message d'erreur exactement ? J'utilise la dernière version de mySQL (mySQL 4.0.15 et phpmyadmin 2.5.3, inclus dans Easyphp) et je ne fais rien d'autre de me servir des fonctions qu'il me propose. Je comprends pas trop là.
Merci de votre aide
edit : bizarrement, le nom de fichier indiqué dans le message d'erreur n'est pas du tout celui que j'ai choisi avant de valider
Message édité par panzemeyer le 27-07-2004 à 21:21:09