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

 MySQL Discussion :

Pb d'import en ligne de commande


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juin 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2010
    Messages : 210
    Par défaut Pb d'import en ligne de commande
    Bonjour,
    J'ai un pb d'importation de fichier csv en ligne de commande et je ne sais pas comment le résoudre.
    Merci pour votre aide.
    En fait le but est que j'extrais les données de plusieurs serveurs distants.
    Ces données sont mis dans des fichiers csv avec des virgules pour séparer les champs, mais ces champs peuvent contenir des "\" ainsi que des "." ou encore "-". L'import fonctionne très bien dans mon fichier "php" mais impossible de le faire fonctionner en requête sql directe dans "phpmyadmin" ou en ligne de commande via "mysql.exe".
    Je ne comprends pas du tout pourquoi. Surtout que c'est un copier/coller des requêtes utilisées dans mon fichier php qui fait l'import.
    Le but final est de non pas effectuer les imports dans php mais via batch pour les programmer régulièrement.
    Je ne sais pas si je me suis bien fait comprendre là sur le coup.
    Merci pour vos rapides réponses.

    Voici la commande que je fais :
    D:\xampp\mysql\bin\mysql.exe -B --host=localhost --user=MONUSER --password=MONPASSWORD --database=MABASE < E:\MonRepertoire\MonSousRepertoire\ImportTables.sql
    Et voici les commandes SQL pour l'import (elles fonctionnent dans mon php)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    LOAD DATA INFILE 'E:\\\\MonRepertoire\\\\MonSousRepertoire\\\\OS\-NOM\-SERVER.csv'
         REPLACE INTO TABLE MATABLE
         FIELDS TERMINATED BY ','
         ENCLOSED BY '\"'
         LINES TERMINATED BY '\\r\\n'
         IGNORE 1 LINES;
    Merci pour l'aide car là je ne comprends plus rien. Ca fonctionne très bien dans ma page php et copier/coller dans script SQL ça ne fonctionne plus.


    Je précise aussi qu'au début du script je fais des TRUNCATE des tables et ça ça fonctionne bien. C'est donc le LOAD DATA.... qui ne fonctionne pas. Mais pourquoi ? Je ne sais pas.

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juin 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2010
    Messages : 210
    Par défaut
    Bon bah je me réponds à moi même.
    J'avais une erreur dans la recherche de fin de ligne.
    Il fallait juste "\n" et non "\r\n"
    L'export csv a changé ce paramètre. Je ne vais pas chercher à comprendre pourquoi.

  3. #3
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    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 288
    Par défaut
    Il est probable que ce soit un changement d'environnement. Les fichiers texte générés sous Windows utilisent \r\n comme séparateur de ligne, tandis qu'avec les autres systèmes c'est \n tout court.

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juin 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2010
    Messages : 210
    Par défaut
    Le truc c'est que justement les exports sont générés sous windows et sont ensuite importés dans ma base sous windows sur un autre serveur.
    En gros, j'exporte les données de différentes BDD propriétaires, je les envois sur mon serveur pour être importés dans ma BDD et ensuite être traités.
    Je ne comprends donc pas trop pourquoi ce changement mais bon ce n'est pas grave, le principal est que maintenant ça marche bien.

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

Discussions similaires

  1. [BO XI] Import d'univers en ligne de commande
    Par xdescamp dans le forum Administration-Migration
    Réponses: 8
    Dernier message: 07/12/2010, 17h31
  2. commande import en ligne
    Par AlexFred dans le forum Débuter
    Réponses: 8
    Dernier message: 05/10/2010, 18h54
  3. [MAC OS] Lignes de commande import de base
    Par Adlack dans le forum Débuter
    Réponses: 2
    Dernier message: 16/06/2009, 23h19
  4. Faire un Exporter/Importer en ligne de commandes
    Par NedaRyme dans le forum Débuter
    Réponses: 0
    Dernier message: 26/08/2008, 16h52
  5. import de fichier en ligne de commande
    Par gypa dans le forum Requêtes
    Réponses: 3
    Dernier message: 15/11/2006, 10h40

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