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

PHP & Base de données Discussion :

[EasyPhp,Mysql] Commande "LOAD DATA INFILE" [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué Avatar de Jahprend
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 255
    Points : 165
    Points
    165
    Par défaut [EasyPhp,Mysql] Commande "LOAD DATA INFILE"
    Bonjour,

    J'utilise la commande "LOAD DATA INFILE" pour remplir ma base de donnée Mysql à partir d'un fichier texte, jusqu'à la, rien de sorcier.

    En parcourant le net, je n'ai pas réussi à trouver un exemple où quelqu'un à utilisé 2 choix sur la restriction "FIELDS TERMINATED BY" (le champ se termine par), tout les exemples que je trouve sont avec une seule condition, j'aurai besoin de 2 conditions pour ma part, le '/' et la ',', est ce possible ?

    En parrallèle de ça, j'aurai aussi voulu savoir si cette restriction pouvait elle-même avoir une restriction , c'est à dire est-il possible que la restriction "se termine par" '/' s'arrête après le 4ème '/' rencontré?

    PS : Je cherche peut être trop compliqué, mais je ne vois pas comment faire autrement pour le moment.

    Merci d'avance

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    je ne pense pas que se soit possible load data à l'avantage d'être rapide mais ton fichier texte doit être correctement formaté...

    deux solutions je pense:
    tu aprse ton fichier texte et le modifie pr lui donner une forme reconnue par load data

    tu gère ton insert en base via php

    perso je préfère la première solution car il me semble quelle peut être un poil plus rapide (enfin à voir pas sur de moi :neutre

  3. #3
    Membre habitué Avatar de Jahprend
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 255
    Points : 165
    Points
    165
    Par défaut
    tu aprse ton fichier texte et le modifie pr lui donner une forme reconnue par load data
    Tout mon "logiciel" doit fonctionner en automatique, je ne peux pas me permettre de demander une modification de mon fichier texte qui fait entre 100 et 1000 lignes à la main.

    PS : "tu aprse" = tu passes?

    tu gère ton insert en base via php
    C'est à dire ?

    PS : mes lignes de commandes sont déja passé via php

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    PS : "tu aprse" = tu passes?
    non ct tu parses dsl et donc tu parcours ton fichier en php pour le modifier et ensuite tu faits le load data
    tu gère ton insert en base via php
    non ce que je voulais dire c'est tu ouvres ton fichier et tu insères ligne par ligne voili voilou en espérant être plus clair

  5. #5
    Membre habitué Avatar de Jahprend
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 255
    Points : 165
    Points
    165
    Par défaut
    Merci pour tes réponses

    tu parcours ton fichier en php pour le modifier
    Je vois... est ce qu'il existe une fonction php permettant de parcourir mon fichier, et qui, à chaque rencontre d'un "/", le remplace par " "," ", je pense que sur le papier ca pourrai fonctionner pour ce dont j'ai besoin.
    Edit : fopen, str_replace

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    plutot que fopen utilise file tout simplementn qui retourne un tableau de ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		$chemin = $_SERVER['argv'][1];
    		$lines = file($chemin, FILE_SKIP_EMPTY_LINES) ;
    		foreach ( $lines as $line_num => $line ) {
    			//traitement à faire
    			}
    		}
    		//ecriture fichier traité
    		file_put_contents  (  $chemin  ,$buffer);

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

Discussions similaires

  1. [MySQL-5.7] load data infile
    Par sunzoo dans le forum MySQL
    Réponses: 0
    Dernier message: 28/04/2015, 10h36
  2. LOAD DATA INFILE et quotes
    Par bart0356 dans le forum Requêtes
    Réponses: 1
    Dernier message: 07/03/2014, 11h44
  3. [MySQL] MySql et requête LOAD DATA INFILE
    Par Corpia dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/08/2013, 15h20
  4. [MySQL]Problème avec load data infile
    Par GLDavid dans le forum SGBD
    Réponses: 5
    Dernier message: 16/03/2007, 13h36
  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