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 :

Import fichier CSV via l'interface MySQL


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut Import fichier CSV via l'interface MySQL
    Bonjour,

    Je m'initie à MySQL et j'essaie d'importer un fichier CSV via l'interface MySQL.
    La structure est simple.
    Id;titre;information;date_news

    Le champ date_news est de type timestamp avec par la propriété Défault mise à CURRENT_TIMESTAMP

    Mon fichier csv à la structure suivante et il fonctionne :
    ;Import;Importation via MySQL;2009-02-09
    Dans ce cas, par contre c'est moi qui fixe la date

    Par contre comment configurer mon fichier CSV pour que la date soit mise en auto lors de la création.
    Si je fait un fichier CSV comme suit : ;Import;Importation via MySQL;
    Il remplit le champ date_news avec 0000-00-00 00:00
    Il ne met pas la date et heure en cours lors de la création ?
    D'avance merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2005
    Messages : 357
    Points : 537
    Points
    537
    Par défaut
    Salut,
    Il suffit que tu spécifies les champs que tu importe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    LOAD DATA  'ton fichier csv' INTO TABLE `ta_table` 
    FIELDS TERMINATED BY ';' 
    ENCLOSED BY '"' 
    ESCAPED BY '\\' 
    LINES TERMINATED BY '\r\n'
    (`champ1` , `champ2` , `champ3`
    )
    Les champs non mentionnés seront remplis avec les règles par défaut de la table.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,
    Le fichier csv ne peut être que sur le serveur ?

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2005
    Messages : 357
    Points : 537
    Points
    537
    Par défaut
    non il peut être sur ta machine mais alors tu dois utiliser la clause LOCAL (et j'avais oublié de mettre le INFILE) avant le chemin vers le fichier.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    J'ai mis
    LOAD DATA LOCAL INFILE "C:\\Excel\News.txt" INTO TABLE `testeric`
    FIELDS TERMINATED BY ';'
    ENCLOSED BY '"'
    ESCAPED BY '\\'
    LINES TERMINATED BY '\r\n'
    (`titre` , `information`
    )
    mais j'ai un message #2000 - Can't find file 'C:\Excel\News.txt'.

  6. #6
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Et le fichier c:\Excel\news.txt existe bien sur ton HDD ?

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    Bien sur qu'il existe.
    J'ai même copier le chemin avec Clipname pour être parfaitement sûr de la syntaxe

  8. #8
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    c'était juste une question !
    Bon et si tu rajoutes un antislash de manière à le doubler avant le news.txt ?
    En effet, le caractère antislash est interpreté comme un caractère spécial et il faut le doubler.

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    Rassures toi, j'avais mal copié, j'ai remis ce qui suit mais même erreur


    LOAD DATA LOCAL INFILE 'C:\\Excel\\News.txt' INTO TABLE `testeric`
    FIELDS TERMINATED BY ';'
    ENCLOSED BY '"'
    ESCAPED BY '\\'
    LINES TERMINATED BY '\r\n'
    (`titre` , `information`
    )

  10. #10
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Tu développes sur quelle architecture ? LAMP ? IIS + PHP + MYSQL ? EasyPHP ? WAMP ?

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,
    Je ne développe rien.
    Je veux simplement essayé de remplir ma base MySQL simplment à distance avec un fichier txt ou csv (en local) depuis mon interface via le Web et une adresse du type http::/phpadmin.nomdedomaine.tld
    Je suis dans mon interface PHPAdmin et j'utilise l'option SQL
    ou je colle le code.
    Et là j'exécute.

  12. #12
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Et pourquoi tu n'utilises pas alors la fonction d'import de fichiers csv de phpmyadmin ?
    C'est dans l'onglet IMPORTER puis tu sélectionnes CSV via LOAD DATA et tu définis les paramètres...(retour chariot, caractères séparateurs, etc...)
    Images attachées Images attachées  

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Développement VBA
    Inscrit en
    Décembre 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développement VBA

    Informations forums :
    Inscription : Décembre 2008
    Messages : 44
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    J'explique dans mon premier poste que lorsque j'utilise l'option dont tu me parles, il ne met pas à jour automatiquement le champ date_news
    En voici la copie :
    La structure est simple.
    Id;titre;information;date_news

    Le champ date_news est de type timestamp avec par la propriété Défault mise à CURRENT_TIMESTAMP

    Mon fichier csv à la structure suivante et il fonctionne :
    ;Import;Importation;2009-02-09
    Dans ce cas, par contre c'est moi qui fixe la date

    Par contre comment configurer mon fichier CSV pour que la date soit mise en auto lors de la création.
    Si je fait un fichier CSV comme suit : ;Import;Importation via MySQL;
    Il remplit le champ date_news avec 0000-00-00 00:00
    Il ne met pas la date et heure en cours lors de la création ?

Discussions similaires

  1. [MySQL] importation fichier CSV avec php et mysql
    Par NapsterVB dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 08/10/2013, 10h01
  2. [MySQL Query Browser] importer fichier csv .
    Par vivien1989 dans le forum Outils
    Réponses: 2
    Dernier message: 24/01/2011, 12h48
  3. [PHP 5.0] import fichier csv dans mysql avec phpadmin
    Par lylya dans le forum Langage
    Réponses: 5
    Dernier message: 17/05/2010, 10h21
  4. importation fichier csv vers mysql par php
    Par frboyer dans le forum Langage
    Réponses: 4
    Dernier message: 26/05/2009, 09h21
  5. Importer un fichier CSV dans une table mySQL
    Par crazydiver_e2 dans le forum Requêtes
    Réponses: 4
    Dernier message: 16/01/2007, 10h47

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