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 :

Load Data infile


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 70
    Par défaut Load Data infile
    Bonjour,

    J'ai un problème lors d'une insertion de données dans une table.

    J'ai deux solutions, faire un fichier .SQL avec des insert into BDD
    Celle-ci marche très bien mais avec 85000 lignes ça met 15min a être insérée sous Toad For MySQL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    insert into idtv values("TST0100002558","TST0000002558.mpg","L'Academie du foot 1/5");
    insert into idtv values("TST0100002559","TST0000002559.mpg","L'Academie du foot 2/5");
    insert into idtv values("TST0100002560","TST0000002560.mpg","L'Academie du foot 3/5");
    insert into idtv values("TST0100002561","TST0000002561.mpg","L' Academie du foot 4/5");
    Sinon je peux le faire avec "load data infile" avec un fichier .csv, cela fonctionne et met seulement 3sec depuis Toad ou MySQL Server.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CONTENT_ID;FILENAME;TITLE
    TST0100002558;TST0000002558.mpg;L'Academie du foot 1/5
    TST0100002559;TST0000002559.mpg;L'Academie du foot 2/5
    TST0100002560;TST0000002560.mpg;L'Academie du foot 3/5
    TST0100002561;TST0000002561.mpg;L' Academie du foot 4/5
    Voilà la requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    load data infile 'D:\CONTENT_ID.csv' replace into table idtv fields terminated by ';' lines terminated by '\n' (content_id,filename,title);
    Le problème est qu'en passant par cette requête à la fin de mon champ titre j'ai un espèce de "carré blanc" qui apparaît, c'est très moche.

    Le seul moyen que j'ai trouvé pour "retirer" ce carré blanc est d'ajouter une 4ème colonne dans ma table et ainsi c'est cette 4ème colonne qui récupère ce carré blanc.
    ainsi je supprime la colonne de ma table.

    Bref pour automatiser quelques choses je suis obligés de créer une colonne et puis d'ajouter un ";" dans mon fichier .csv, c'est du travail en plus...et même si je peux formater le fichier .csv via un script perl ou bash je veux m'éviter cette tâche, ce n'est pas le but.

    Je fais donc appel à vous pour savoir s'il y a moyen de faire autrement ou bien de retirer ce foutu "carré blanc"

    Merci pour vos lumières.

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Tes lignes ne seraient-elles pas terminées par '\r\n' ?

    Citation Envoyé par Doc MYSQL
    Note : si vous avez généré le fichier sur Windows, vous devrez peut-être utiliser LINES TERMINATED BY '\r\n' pour lire le fichier correctement, car les programmes Windows utilisent généralement deux caractères comme fin de ligne. Certains programmes, comme WordPad, peuvent utiliser \r comme terminateur de ligne lors de l'écriture. Pour lire ces fichiers, utilisez LINES TERMINATED BY '\r.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 70
    Par défaut
    C'est exactement ça !

    Merci t'es un dieu

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

Discussions similaires

  1. [LOAD DATA INFILE] clé auto incrémentés
    Par ashurai dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/02/2006, 17h17
  2. Réponses: 5
    Dernier message: 18/04/2005, 12h38
  3. probleme avec "LOAD DATA INFILE" et les b
    Par Koo dans le forum Requêtes
    Réponses: 2
    Dernier message: 01/07/2004, 09h37
  4. Problème avec LOAD DATA INFILE
    Par ka0z dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 04/06/2004, 14h59
  5. petit soucis lors d'un LOAD DATA INFILE
    Par Jovial dans le forum SQL Procédural
    Réponses: 9
    Dernier message: 04/06/2004, 11h58

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