Import d'XML dans SQL Server 2000 [Résolu]

Signaler
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006
-
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006
-
Bonjour à tous,


Je voudrais importer des fichiers XML dans SQL Server 2000, mais je sais pas comment faire...

Une collègue et moi avons suivi une formation (avec un formateur bidon,
pas de bol ^^) qui nous a dit qu'il fallait qu'on développe un module
en VB ou ASP.NET, mais ça me semble curieux. Savez vous s'il existe des
modules déjà prêts pour faire ce genre d'import? Normalement, ça
devrait exister non? C'est pas une requête si farfelue que ça!!!

Merci d'avance pour vos réponses...

merDude

4 réponses

Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006

Bonjour, et merci !!


J'avais trouvé ce lien déjà, mais j'ai trouvé plus simple: des modules à télécharger qui font (presque) tout tout seuls ^^


Je vous donne les liens:
http://www.sqlmanager.net/fr/products/mssql/manager
http://24.234.143.242/p4/xml_for_sql.exe' target='_blank'>http://www.playerslounge.com/scripts/meta.idc?teamkey=HACKING6&link=http://24.234.143.242/p4/xml_for_sql.exe


C'est vrai que la démarche est surement moins enrichissante que de
batailler tout seul, mais j'avais besoin de gagner du temps...

Merci en tout cas de ta réponse!
merDude
Messages postés
268
Date d'inscription
samedi 22 février 2003
Statut
Membre
Dernière intervention
24 avril 2013
3
Je pense que l'idée de regarder dans la msdn était la bonne en effet on y trouve la documentation sur : OPENXML qui permet de travailler dans un fichier xml comme si c'était une table

petit exemple pour charger le contenu d'un XML dans une table

DECLARE @Doc nvarchar(max)   --Contient le code xml
DECLARE @iDoc INT   --Identifiant interne

Set @DOC =N'
   <Contacts>
      <Contact Nom="Roger" Num="0123456789"/>
      <Contact Nom="Pierre" Num="0123446789"/>
      <Contact Nom="Alex" Num="0113456789"/>
      <Contact Nom="Théodore" Num="0123456689"/>
      <Contact Nom="Gontran" Num="0123456788"/>
   </Contacts>
'

--on prepare le document pour traitement
EXECsp_xml_preparedocument @iDoc OUTPUT, @Doc
 
INSERT INTO Contacts
   (Nom,Numero)
SELECT
   Nom, Numero
FROM
  OPENXML(@iDoc,'/Contacts/Contact', 2)
   WITH (
      Nom nvarchar(100) '@Nom',
      Numero nvarchar(20) '@Num')

EXECsp_xml_removedocument @iDoc

Pour en savoir plus rendez vous sur la MSDN ...
Messages postés
1
Date d'inscription
lundi 21 février 2005
Statut
Membre
Dernière intervention
30 mai 2006

Bonjour,
tout est bien expliqué sur la base de connaissance Micro$oft ici
La KB de Micro$oft est ton amie!

Bon courage, tiens nous au courant pour voir si ça marche (jamais testé encore)
Messages postés
40
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
17 août 2006

Merci, tout simplement ^^

merDude