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

  1. #1
    Candidat au Club
    Homme Profil pro
    je gère le site d'une association
    Inscrit en
    mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : je gère le site d'une association
    Secteur : Associations - ONG

    Informations forums :
    Inscription : mars 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut importation via phpmyamin

    Bonjour,
    Mes connaissances en matière de BdD avancent à pas de loup.
    Mais bon, j'en suis à tenter d'importer un fichier "xlsx" dans une table de ma base de donnée.
    Compte tenu du fait qu'il n'y a pas d'option d'importation de fichier "xlsx", j'ai tenté le coup avec une conversion de mon fichier "xlsx" en "csv"... cela ne fonctionne pas.
    J'ai donc converti mon fichier "xlsx" en document "ods" (qui est l'une des formes autorisées dans phpmyadmin) et ... ma table était complétée par les données de nos membres.
    Sauf que la colonne id (clé primaire) était vide ainsi que celle contenant les adresses email de nos membres.
    D'où mes questions :
    une colonne destinée recevoir des adresses email doit-elle contenir des données d'un "type" particulier (moi j'avais mis "varchar") ?[/LIST]
    une colonne "id" (clé primaire) doit-elle contenir des données d'un "type" particulier ?

    Je suis les instructions d'un bouquin intitulé "PHP & MySQL pour les nuls", mais je dois être plus nul que nul !!! ou je vais plutôt chercher d'autres sources d'information, sur votre site.

    D'avance merci pour votre collaboration.

    André
    Fichiers attachés Fichiers attachés

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    juillet 2011
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juillet 2011
    Messages : 125
    Points : 203
    Points
    203

    Par défaut

    Citation Envoyé par loustalou1 Voir le message
    une colonne destinée recevoir des adresses email doit-elle contenir des données d'un "type" particulier (moi j'avais mis "varchar") ?
    varchar est le type adapté adapté pour une colonne qui stocke des adresses mail.

    Citation Envoyé par loustalou1 Voir le message
    une colonne "id" (clé primaire) doit-elle contenir des données d'un "type" particulier ?
    Très souvent on utilise un nombre entier auto incrémenté (comme c'est le cas sur la table "membre"), lors de l'insertion il n'est pas nécessaire de préciser une valeur car c'est MySQL qui la choisira en fonction des valeurs déjà utilisées (sauf si la table est vidée sans réinitialiser la valeur de l'AUTO_INCREMENT).

    Citation Envoyé par loustalou1 Voir le message
    Mais bon, j'en suis à tenter d'importer un fichier "xlsx" dans une table de ma base de donnée.
    Compte tenu du fait qu'il n'y a pas d'option d'importation de fichier "xlsx", j'ai tenté le coup avec une conversion de mon fichier "xlsx" en "csv"... cela ne fonctionne pas.
    J'ai donc converti mon fichier "xlsx" en document "ods" (qui est l'une des formes autorisées dans phpmyadmin) et ... ma table était complétée par les données de nos membres.
    Sauf que la colonne id (clé primaire) était vide ainsi que celle contenant les adresses email de nos membres.
    Je pense que le format CSV est préférable car il ne contient que du texte (attention par contre à l'encodage lors de l'export depuis le .xlsx, le plus simple étant d'utiliser partout UTF-8).
    Dans phpMyAdmin, il faut préciser les options spécifiques au format, c'est à dire les caractères de séparation des colonnes, etc... mais aussi il est surtout possible de lister le nom des colonnes dans le cas où les colonnes du fichier CSV ne soient pas dans le même ordre que celle de la table en base.
    Après si besoin voici un tutoriel vidéo (en anglais) qui date un peu mais qui montre comment à partir d'un fichier .xlslx générer un .csv et l'importer dans une table contenant déjà des données :

  3. #3
    Candidat au Club
    Homme Profil pro
    je gère le site d'une association
    Inscrit en
    mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : je gère le site d'une association
    Secteur : Associations - ONG

    Informations forums :
    Inscription : mars 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut

    Bonjour,
    Merci Thomas pour cette prompte et fructueuse intervention.

    André

  4. #4
    Candidat au Club
    Homme Profil pro
    je gère le site d'une association
    Inscrit en
    mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : je gère le site d'une association
    Secteur : Associations - ONG

    Informations forums :
    Inscription : mars 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut

    Bonjour,
    J'ai encore une question concernant l'importation de données dans la table de la base de données.
    Lors de l'importation des données je reçois un message d'erreur m'indiquant que le nombre de colonnes du fichier ".csv" ne correspond pas à celui de la table.
    Faut-il que ce nombre soit exactement le même ? Et dans l'affirmative doit-elle être vide dans le fichier ".csv", ou la colonne "id" (clé primaire) ne doit-elle exister que dans la table. J'ai essayé plusieurs options mais cela ne fonctionne pas.
    Dans certains cas, j'ai le message d'erreur "nombre de colonnes différent", et dans d'autres cas la colonne "id" de la table reste désespérément vide.

    D'avance merci pour votre soutien.

    André

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    juillet 2011
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juillet 2011
    Messages : 125
    Points : 203
    Points
    203

    Par défaut

    Oui il faut que le .csv contienne le même nombre de colonne que la table de la base de données.

    Je viens de faire un essai avec un CSV contenant les colonnes suivantes : id, champ1, champ2, champ3
    Seules les colonnes des champs ont des valeurs, la colonne id est vide, lors de l'import dans une table (id, champ1, champ2, champ3), les données s'importe correctement et les id sont correctement auto-générés par MySQL.

    Donc le plus simple c'est de laisser vide la colonne id et/ou les colonnes/cellules qui n'ont pas de valeur tout en aillant le même nombre de colonne entre le .csv et la table (l'ordre peut être modifié lors de l'import via l'option "Nom des colonnes).

  6. #6
    Candidat au Club
    Homme Profil pro
    je gère le site d'une association
    Inscrit en
    mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : je gère le site d'une association
    Secteur : Associations - ONG

    Informations forums :
    Inscription : mars 2019
    Messages : 7
    Points : 4
    Points
    4

    Par défaut

    Une fois encore... merci Thomas. Je vais essayer.

Discussions similaires

  1. Problèmes d'importation via DTS de Sql server2000
    Par bigey3 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/01/2008, 16h20
  2. [FTP] Export et Import via FTP distant
    Par npirard dans le forum Fichiers
    Réponses: 1
    Dernier message: 11/09/2007, 20h39
  3. export import via TOAD
    Par big1 dans le forum Toad
    Réponses: 0
    Dernier message: 21/08/2007, 16h08
  4. importation via excel
    Par pat1545 dans le forum Access
    Réponses: 4
    Dernier message: 02/08/2006, 16h24
  5. Importer via asp.net c# des variables dans mon namespace xsl
    Par akaii dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/01/2006, 08h41

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