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

SQL Procédural MySQL Discussion :

LOAD DATA INFILE et Mysql 5


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Par défaut LOAD DATA INFILE et Mysql 5
    voilà j'ai une table dans laquelle je souhaiterai intégrer des données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE `matable` (
      `champa` int(10) unsigned NOT NULL default '0',
      `champb` int(10) unsigned NOT NULL default '0',
      `champc` char(2) NOT NULL default '',
      PRIMARY KEY  (`champa`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
    Pour cela j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    LOAD DATA INFILE '/home/temp/mesdonnees.txt'
    INTO TABLE matable
    FIELDS TERMINATED BY ','
    LINES TERMINATED BY ';'
    Ca marchait très bien sous mysql 4 et maintenant avec mysql 5 il m'enregistre bien la première donnée dans la base, puis la deuxième il met une valeur pour champb égale à zéro, pour terminer enfin sur un message d'erreur...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MySQL a répondu:Documentation
    #1062 - Duplicate entry '0' for key 1
    Dans ma base j'ai donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    champa champb champc
    33996344  33996351   AA
    0  68257567  BB
    Z'auriez pas une idée ? Est ce que LOAD DATA INFILE est différent de mysql 4 à mysql 5 ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 287
    Par défaut
    Qu'as-tu dans ton fichier ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Par défaut
    , voilà ce que j'ai dans mon fichier (geoip):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    33996344,33996351,GB;\r\n
    50331648,68257567,US;\r\n
    68257568,68257599,CA;\r\n
    68257600,68259583,US;\r\n
    68259584,68259599,CA;\r\n
    68259600,68296775,US;\r\n
    68296776,68296783,MX;\r\n
    68296784,68298887,US;\r\n
    68298888,68298895,CA;\r\n
    68298896,68305407,US;\r\n
    Après réfléxion (si si ) j'ai trouvé d'où ça venait : Mon fichier comportait des sauts de lignes \r\n en fin de ligne qui étaient tolérées (obligatoires peut-être d'ailleur ?) avant. Mais maintenant il faut que j'utilise un fichier comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    33996344,33996351,GB;50331648,68257567,US;68257568,68257599,CA;68257600,68259583,US;68259584,68259599,CA;68259600,68296775,US;68296776,68296783,MX;68296784,68298887,US;68298888,68298895,CA;68298896,68305407,US;

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bigsister Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    LOAD DATA INFILE '/home/temp/mesdonnees.txt'
    INTO TABLE matable
    FIELDS TERMINATED BY ','
    LINES TERMINATED BY ';'
    Peut être qu'en mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LINES TERMINATED BY ";\r\n"
    ça marcherai...

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Par défaut
    oui effectivement j'aurai pu essayer comme ça mais comme ma première solution fonctionnait et que je ne suis pas sûr de la bonne interprétation de ces caractères spéciaux selon les plateformes etc... je ne l'ai pas tenté.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. prob LOAD DATA INFILE mysql 5.5 windows XP
    Par dgiet dans le forum Débuter
    Réponses: 4
    Dernier message: 09/06/2011, 19h41
  2. [MySQL] [EasyPhp,Mysql] Commande "LOAD DATA INFILE"
    Par Jahprend dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 05/06/2009, 17h37
  3. [MySQL]Problème avec load data infile
    Par GLDavid dans le forum SGBD
    Réponses: 5
    Dernier message: 16/03/2007, 13h36
  4. [mysql/php]load Data Infile Pb
    Par toniox dans le forum Requêtes
    Réponses: 13
    Dernier message: 26/06/2006, 16h00
  5. Mysql 5: difficulté avec load data infile
    Par koueletbak dans le forum Requêtes
    Réponses: 3
    Dernier message: 05/05/2006, 18h16

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