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

Requêtes MySQL Discussion :

probleme avec "LOAD DATA INFILE" et les b


Sujet :

Requêtes MySQL

  1. #1
    Koo
    Koo est déconnecté
    Membre éclairé Avatar de Koo
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 76
    Par défaut [Résolu]probleme avec "LOAD DATA INFILE" et les b
    j'ai fait une extraction d'une BDD proriétaire pourrave, et j'ai un fichier CSV, avec ';' comme delimiteur. Ptit extrait:
    1;1;"D:\VUES\GG19\GG19_001.jpg";
    2;1;"D:\VUES\GG19\GG19_002.jpg";
    3;1;"D:\VUES\GG19\GG19_003.jpg";
    je fait donc une requete pour reimporter le contenu dans MySql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    LOAD DATA  INFILE  'mon_fichier_csv'
    INTO  TABLE  ma_table
    FIELDS  TERMINATED  BY  ';' OPTIONALLY  ENCLOSED  BY  '"' 
    LINES  TERMINATED  BY  '\r\n';
    problème : MySql aime pas les backslahs simples. Il veut '\\'. Donc je me retrouve avec D:VUESGG19GG19_001.jpg après l'importation par exemple.

    Provisoirement j'ai fait un script pour remplacer le backslah dans le fichier CSV, mais eskil y aurait pas une méthode plus mieux bien, pour faire ca direct dans la requete. Du genre REPLACE(), mais je vois pas trop où le foutre.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Par défaut
    Oui c'est possible mais tu dois gentillement demander à madame MySql de bien vouloir échapper ses caractères spéciaux avec autre chose que \

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    LOAD DATA  INFILE  'mon_fichier_csv' 
    INTO  TABLE  ma_table 
    FIELDS  TERMINATED  BY  ';' OPTIONALLY  ENCLOSED  BY  '"' 
    ##### ici tu escapes par | mais tu mets ce que tu veux #######
    ESCAPED BY '\|'
    LINES  TERMINATED  BY  '\r\n';
    Dis nous si ça marche!


  3. #3
    Koo
    Koo est déconnecté
    Membre éclairé Avatar de Koo
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 76
    Par défaut
    yaaiiissse, ca marche merci


    c'est vraiment con MySql desfois

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

Discussions similaires

  1. LOAD DATA INFILE et quotes
    Par bart0356 dans le forum Requêtes
    Réponses: 1
    Dernier message: 07/03/2014, 11h44
  2. [MySQL] probleme avec load data infile
    Par hatem dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/11/2006, 16h34
  3. [MySQL] Problème avec LOAD DATA INFILE
    Par Pgs dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/07/2006, 15h33
  4. Mysql 5: difficulté avec load data infile
    Par koueletbak dans le forum Requêtes
    Réponses: 3
    Dernier message: 05/05/2006, 18h16
  5. Problème avec LOAD DATA INFILE
    Par ka0z dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 04/06/2004, 14h59

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