|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |
|
Membre expérimenté
![]() Développeur informatique Inscription : janvier 2011 Messages : 309 ![]() |
Bonjour à tous,
J'ai vu pas mal de sujet à propos de mon problème, mais ça ne m'a pas trop aider. Je demande donc votre attention. J’ai un fichier Excel de plus de 2000 lignes à insérer dans une base de données SQL Server. En gros, ces lignes vont être insérées dans 2 tables, une table société et une table contact. Le format du fichier Excel n'est pas encore définitif (je peux modifier sa structure avant de l'exploiter). La première ligne du fichier correspond aux nom des colonnes. Il peut y avoir plusieurs contacts par société, je vous montre un exemple pour que ça soit plus simple Citation:
et dans ma base de données, mes 2 tables seront : Societe(id, nomSociete, numTelephone) Contact(id, nomContact, prenomContact, email, idSociete) Je ne vois pas comment traiter ça. Je suis sous SQL Server 2005. J'ai eu quelques indications sur le chat, on m'a parlé de Bulk Insert avec des curseurs mais je ne vois pas comment faire. Si quelqu'un aurait une piste pour moi ![]() Merci |
|
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 954 ![]() |
Transformez votre feuille Excel en CSV.
Utilisez BCP.exe ou BULK INSERT. Définissez les délimiteur ( Ne prenez pas la première ligne. A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
10
|
|
|
#3 | ||
|
Membre expérimenté
![]() Développeur informatique Inscription : janvier 2011 Messages : 309 ![]() |
Merci pour ta réponse rapide
J'ai bien vu cette manière de faire, mais je ne vois pas comment gérer ma clé étrangère idSociete J'ai essayé quelque chose comme ça, j'ai compris comment fonctionne le Bulk insert Code SQL :
Mais c'est pour après, car une ligne de mon fichier Excel contient des données qui sont destinées à 2 tables différentes |
||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() |
|
|
10
|
|
|
#5 |
|
Membre expérimenté
![]() Développeur informatique Inscription : janvier 2011 Messages : 309 ![]() |
Merci pour ce lien
Je suis finalement parti vers une méthode moins "orthodoxe" mais je ne voyais pas comment faire autrement. J'ajouterai les clés manuellement dans mon fichier excel. J'ai tester, ça fonctionne correctement. merci à vous |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com