IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

importer fichier txt problème de date


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut importer fichier txt problème de date
    bonjour à tous
    j'importe un fichier txt grace à la requête LOAD DATA INFILE dans phpmyAdmin.
    Ce fichier txt est obtenu suite à une conversion d'un fichier qui est à la base en csv.(je l'ouvre avec notepad et je l'enregistre en txt).
    ce fichier comprend notamment un champ au format date qui n'est pas forcément renseigné.
    lorsque j'essai de l'importer il me décèle une erreur dans la première ligne qui est une ligne ou ce champs est nul.
    j'ai vérifié la structure de ma table et tout est ok à ce niveau.
    Le problème vient-il du mauvais format du champs date à l'origine?
    lorsque j'ouvre mon fichier csv avec excel j'essai de changer le format de la date pour le mettre sous le format reconnu par SQL (Annee-Mois-Jour) mais cela ne changer rien j'ai toujours cette erreur.
    Que dois-je faire?

    Merci à tous

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 327
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 327
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par docteurdorian Voir le message
    j'importe un fichier txt grace à la requête LOAD DATA INFILE dans phpmyAdmin.
    Ce fichier txt est obtenu suite à une conversion d'un fichier qui est à la base en csv.(je l'ouvre avec notepad et je l'enregistre en txt).
    MySQL peut importe directement un CSV.

    ce fichier comprend notamment un champ au format date qui n'est pas forcément renseigné.
    lorsque j'essai de l'importer il me décèle une erreur dans la première ligne qui est une ligne ou ce champs est nul.
    Le champ contenant la date accepte les valeurs NULL ??

    j'ai vérifié la structure de ma table et tout est ok à ce niveau.
    Bon, je suppose que oui

    Le pb vient-il du mauvais format du champs date à l'origine?
    Difficile de te répondre car pas de message d'erreur mentionné.

    lorsque j'ouvre mon fichier csv avec excel j'essai de changer le format de la date pour le mettre sous le format reconnu par SQL (Annee-Mois-Jour) mais cela ne changer rien j'ai toujours cette erreur.
    Que dois-je faire?
    Nous donner la requête de création de la table de destination, la commande MySQL LOAD DATA utilisée, le message d'erreur retourné dans ton cas et un extrait du fichier nous permettant de reproduire l'erreur pour tests

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut
    seb,
    voila les indications demandées :
    requête sql : LOAD DATA INFILE "011.txt" INTO TABLE generale
    fields terminated by ";"

    erreur retournée par phpmyadmin : erreur#1292 incorrect date value: ' ' for column 'date_AV' at row 1

    pour un extrait de mon fichier j'avoue que je n'utilise pas souvent de forum, comment puis-je t'en donner un?

    merci beaucoup

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 327
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 327
    Billets dans le blog
    17
    Par défaut
    En le copiant/collant ici.

    erreur retournée par phpmyadmin : erreur#1292 incorrect date value: ' ' for column 'date_AV' at row 1
    Il semblerait que le champ date de ton CSV contienne un caractère blanc.

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    Citation Envoyé par Séb. Voir le message
    En le copiant/collant ici.


    Il semblerait que le champ date de ton CSV contienne un caractère blanc.

    pas forcement si le format de date n'est pas correct l'erreur sera la même donc ils nous faut un exemple de ligne de son csv .

    Ensuite plusieurs solutions:
    - soit tu passe le champ date de ta table en varchar
    - soit tu fais un traitement sur ton fichier pour le formater correctement et ensuite tu fais le load data
    - soit tu parcours ton fichier et tu insers ligne par ligne en php ( la plus lourde je pense..)

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut
    voici un exemple de mon fichier csv :
    11;1;25;50;5;13713;COUDE PVC MALE FEMELLE 22 DEG D100MM;8834;GIRPI SA;A;;

    11;1;24;5;20;302603;VIS PARISIENNE TETE RONDE 6X60 BTE 20;200122;BOL;S;20/09/2007;

    la première ligne est un ex avec le champs date vide et la seconde avec un champs date rempli

    pour l'instant j'ai fait l'import avec le champs date en "TEXT" mais j'ai besoin de l'importer au format date parce qu'ensuite je fais des requetes sql au sein de tableaux php ou je compare ces dates par rapport à la date du jour.

    merci

Discussions similaires

  1. [AC-2010] Problème d'import fichier txt contenant des caractères spéciaux
    Par stsym dans le forum VBA Access
    Réponses: 2
    Dernier message: 27/03/2014, 05h08
  2. Import fichier .txt et format de date
    Par m@tix dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 01/11/2013, 14h29
  3. [AC-2000] Problème Import fichier .txt dans une table Access
    Par sylviobarca dans le forum VBA Access
    Réponses: 3
    Dernier message: 30/12/2010, 17h17
  4. Problème import fichier.txt
    Par ndundux dans le forum Import/Export
    Réponses: 4
    Dernier message: 23/09/2008, 17h12
  5. [SQLServer]Script import fichier .txt
    Par Jenbi dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/08/2006, 16h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo