Petit problème mysql [Résolu/Fermé]

Signaler
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
-
 phil74 -
Bonjour,

Lors de l'utilisation de la commande mysqlimport, j'ai une erreur du type :
"can't get stats of 'chemin_vers_mon_fichier.txt' when using table nom_table".

Est ce que quelqu'un a une idée de pourquoi ?

Merci

6 réponses

Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138
Erreur Alakon ! -_-"
J'ai déplacé le fichier que je voulais importer et ça marche.
Le problème venait d'une erreur de droits dans mon dossier Documents.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60769 internautes nous ont dit merci ce mois-ci

Utilisateur anonyme
Bien vu !
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138 > Utilisateur anonyme
Mwai.
M'enfin j'ai pas compris en quoi passer mon fichier du dossier Documents qui est dans le dossier user au dossier user pouvait changer quelque chose. Vu que les 2 dossiers avaient les mêmes droits.
Utilisateur anonyme >
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011

Donc on peut penser que le chemin spécifié à l'origine n'était pas bon ou que le droit d'un répertoire n'était pas OK.

bonjour,

Database Import File Does Not Exist
This error means the file you are trying to import into MySQL does not exist. Check you have the path correct and the file actually exists.

mysqlimport: Error: Can't get stat of '/path/to/customers.txt' (Errcode: 2), when using table: customers

Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138
J'ai une table reference.
Et le chemin vers mon fichier est /home/user1/Documents/reference.txt
Le fichier est bien là.
Donc .... ?
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138 > Utilisateur anonyme
Peut être un problème dans la commande ?
Mon script est basique mais j'y ai peut être fait une erreur.
J'ai :
mysql -h localhost -u root projet extranet -e "delete from reference";
mysqlimport projet_extranet '/home/user1/Documents/reference.txt';

Le début marche bien vu que ça me vide ma table.
Ptit screen pour montrer le fichier :
https://imageshack.com/
Utilisateur anonyme >
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011

J'aurai quand même tendance à dire que le pb vient du chemin du fichier text
la syntaxe :
mysqlimport [options] database textfile1 [textfile2 ...]


exemple trouvé dans un manuel PHP
:
$ mysql --version
mysql Ver 9.33 Distrib 3.22.25, for pc-linux-gnu (i686)
$ uname -a
Linux xxx.com 2.2.5-15 #1 Mon Apr 19 22:21:09 EDT 1999 i586 unknown
$ mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test
$ ed
a
100 Max Sydow
101 Count Dracula
.
w imptest.txt
32
q
$ od -c imptest.txt
0000000 1 0 0 \t M a x S y d o w \n 1 0
0000020 1 \t C o u n t D r a c u l a \n
0000040
$ mysqlimport --local test imptest.txt
test.imptest: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
$ mysql -e 'SELECT * FROM imptest' test
+------+---------------+
| id | n |
+------+---------------+
| 100 | Max Sydow |
| 101 | Count Dracula |
+------+---------------+
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138 > Utilisateur anonyme
Me suis servi cette même page. ^^
Mais toujours pas résolu. Ca commence à me saouler ...
Utilisateur anonyme >
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011

il n'y a pas de guillemet sur le nom du fichier.
le chemin /home/ ... est peut être pas correct en partant du répertoire où l'on se trouve pour lancer la commande sqlimport (si path est pas bon ....)
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138 > Utilisateur anonyme
J'ai enlevé les guillemets mais j'ai toujours l'erreur.
Peut être que je devrais définir mes délimiteurs ? Le problème c'est que je délimite mes champs avec ; et je ne sais pas comment l'écrire : fields-terminated-by= ...

autre idée : utiliser LOAD DATA LOCAL ....
Messages postés
2587
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
26 août 2011
138
Il faut utiliser le switch --local:

mysqlimport db_essai essai.csv --local --ignore-lines=1