|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : mars 2008 Messages : 140 ![]() |
Bonjour,
Je suis en train de réaliser un import de fichier client csv dans une base mysql. Jusqu'ici rien de compliqué dans la mesure où j'ai une table mysql client avec les champs suivants : Code :
nom, prenom, adresse, ville, cp, telephone Code :
nom, prenom, adresse, ville, cp, telephone Code :
telephone , prenom, nom, adresse,id_client, ville, cp...etc Ceci étant je cherche une solution mais je cale au niveau fonctionnelle. Je n'arrive pas à définir une méthode qui me permettrait de le faire. Au début j'ai pensé à insérer les données dans une table provisoire puis identifier les colonnes mais c'est un véritable casse tête, je ne sais pas comment m'y prendre pour ensuite renommer les champs. Si quelqu'un peut m'orienter vers une meilleure solution ? Merci pour toutes réponses |
|
|
00
|
|
|
#2 | ||
![]() ![]() |
1) Tu importes le fichier dans une table temporaire.
2) Tu transfères les données dans les bonnes colonnes de la vraie table à l'aide d'une requête. Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : mars 2008 Messages : 140 ![]() |
Oui, j'y avais pensé. Mais le problème est que, comment puis je faire pour identifier les colonnes nom, prenom, adresse, ville, cp, telephone de mon fichier import une fois dans la base.
Puisque à l'origine, le fichier csv ne contient pas de noms de colonnes. Puis lorsque j'ai demandé à mon patron de formater au préalable le fichier en rajoutant dans la première ligne à la main les nom des colonnes, il m'a répondu non qu'il souhaitait que tout soit automatique ! |
|
|
00
|
|
|
#4 |
![]() ![]() |
Tu veux dire que tu récupères des données sans les entêtes de colonnes et que ton boss espère un système suffisamment intelligent qui va savoir que dans telle colonne Paris est la ville et dans telle autre le nom d'une personne ?
Il se fout le doigt dans l'oeil jusqu'à l'omoplate ! ![]() Il faudra un minimum d'intervention humaine pour dire au programme que telle colonne contient telle donnée. Tu peux faire une interface qui affiche en tableau les X premières lignes du fichier récupéré et en tête de ce tableau des listes déroulantes avec les colonnes à alimenter dans la BDD. L'utilsiateur qui importe les données choisit dans chaque liste déroulante la bonne colonne correspondant aux données situées juste en dessous et ensuite tout peut être automatique. Bon courage !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
Copyright © 2000-2012 - www.developpez.com