Précédent   Forum des professionnels en informatique > Bases de données > MySQL
MySQL Forum d'entraide MySQL. Avant de poster -> FAQ MySQL, Tutoriels MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/09/2011, 15h11   #1
Invité de passage
 
Homme
Étudiant
Inscription : septembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2011
Messages : 3
Points : 0
Points : 0
Par défaut Comment remplir une base MySQL automatiquement à partir d'Excel et dans différentes tables

Bonjour à tous,

Mon cas est un peu complexe. J'aimerais savoir si il serait possible, à partir d'un fichier, de remplir une base de données sur différentes tables. La base (en MySQL), les tables et les propriétés (de data dans les tables), sont déjà créées et devront pouvoir continuer à être remplies par formulaire après ce remplissage. Les tables sont également reliées entre elles.

L'objectif est de remplir différentes propriétés (dans différentes tables) tout en reliant ces propriétés.

En bref, comment garder les relations des colonnes d'excel alors qu'elles vont être dispersées dans plusieurs table, tout en ayant un remplissage automatique ?


Exemple : j'ai une liste d'entreprises, leurs adresses et leurs numéros de téléphone, fax et email et service.

Ma table principale est entreprise qui contient en propriétés (nom, années de création, CA, etc).
Mes tables secondaires sont :
-contacts avec comme propriétés : nom du service, téléphone, email, fax
-sites avec comme propriétés : adresse, ville, pays et code postal


Si les tables secondaires existent, c'est parce qu'une entreprise peut avoir plusieurs sites et plusieurs services.

Peu importe la mise en forme sous excel, je peux la retoucher selon vos solutions (si elles existent).

j'utilise Excel 2007 et MySQL ND 5.0.7

Merci d'avance
antbal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2011, 15h59   #2
Invité de passage
 
Homme
Étudiant
Inscription : septembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2011
Messages : 3
Points : 0
Points : 0
petite précision,

Lorsque je dis propriété je veux spécifier champs dans les tables
antbal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 14h26   #3
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 3 823
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 36
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 3 823
Points : 6 433
Points : 6 433
Bonjour,

Si j'ai bien compris, vous cherchez à charger une base de données sous MySQL à partir du contenu d'un fichier Excel unique. C'est bien ça ?
Tout d'abord, pour importer un fichier Excel dans une base MySQL, vous pouvez consulter les solutions présentées dans la : http://mysql.developpez.com/faq/?pag...import_fichier

Seulement voilà, là où Excel doit vous donner un fichier de contacts et de sites tout mélangés, il va falloir faire un peu de tri...
Comme on ne sait pas trop comment est organisé votre fichier Excel de départ, c'est difficile de pouvoir répondre précisément à votre question. Par exemple, y a-t-il une feuille avec les entreprises, une autre avec les contacts et encore une autre avec les sites, ou tout ça est-il complètement mélangé dans une seule et même feuille ?
La stratégie à adopter peut fortement en différer...
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h59   #4
Invité de passage
 
Homme
Étudiant
Inscription : septembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2011
Messages : 3
Points : 0
Points : 0
Citation:
Envoyé par ced Voir le message
Bonjour,

Si j'ai bien compris, vous cherchez à charger une base de données sous MySQL à partir du contenu d'un fichier Excel unique. C'est bien ça ?
Tout d'abord, pour importer un fichier Excel dans une base MySQL, vous pouvez consulter les solutions présentées dans la : http://mysql.developpez.com/faq/?pag...import_fichier

Seulement voilà, là où Excel doit vous donner un fichier de contacts et de sites tout mélangés, il va falloir faire un peu de tri...
Comme on ne sait pas trop comment est organisé votre fichier Excel de départ, c'est difficile de pouvoir répondre précisément à votre question. Par exemple, y a-t-il une feuille avec les entreprises, une autre avec les contacts et encore une autre avec les sites, ou tout ça est-il complètement mélangé dans une seule et même feuille ?
La stratégie à adopter peut fortement en différer...
Bonjour et merci de votre réponse.

Effectivement je veux exporter mon fichier Excel vers une base de données mysql déjà créée.
Alors les données sont actuellement ordonnées de la manière suivante :

feuille 1 (coordonnées) avec :

nom de l'entreprise
adresse
tel
fax
pays
code postal

feuille 2 (antennes de l'entreprise, qui sera relié à une entreprise) avec :

nom de l'antenne
adresse
type du produits (dans Excel le nom du produit mais ce sera une table système dans mysql)

feuille 3 (produit qui sera relié à l'antenne) avec :

Nom du produit
matière (dans Excel le nom du produit mais ce sera une table système dans mysql)
sous matière (dans Excel le nom du produit mais ce sera une table système dans mysql) ex si matière =plastique, sous matière sera thermodurcissable par exemple

feuille 4 (offre sera relié à un produit) avec :
Type de livraison
délai


J'envisage de transformer chaque feuille en une table, elles sont d'ailleurs déjà créées. Bien entendu, chaque feuille contient sur chaque ligne le nom de l'objet auquel la ligne est rattachée.

Par exemple, imaginons que je crée l'entreprise IBM, l'antenne IBM france et le produit ordinateur, alors la feuille antenne contiendra sur la ligne IBM france dans une colonne intitulée (rattachement) le nom "IBM", idem pour le produit ordinateur et l'antenne IBM france.

Je peux également tout regrouper dans une seule feuille si nécessaire, ca prendra un peu de temps mais moins que de tout faire dans la base de données.

N'hésitez pas à me recontacter en cas de besoin ou si vous désirez un exemple sous Excel.
antbal est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h31.


 
 
 
 
Partenaires

Hébergement Web