Joindre un fichier xml a une base de donnees sql server [Résolu]

Signaler
Messages postés
11
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
23 octobre 2006
-
Messages postés
1
Date d'inscription
vendredi 13 octobre 2006
Statut
Membre
Dernière intervention
13 octobre 2006
-
bonjour voila j'ai un probleme j'ai un fichier xml et je voudrais a partir creer une table sql server correspondant le joindre en quelques sorte dés qu'il change la table en question change avec lui voila je sais le fair avec access mais j'arrive pas a trouver le moyen de le faire sous sql server

6 réponses

Messages postés
16
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2008

salut,

est ce que tu pourrais rentrer un peu plus dans les détails, par exemple en montrant l'arborescence du fichier XML (celui qui fonctionne sous access et celui pour SQL Server)?

je ne me suis jamais penché sur le sujet, mais avec les triggers sur les table de MASTER ca pourrait le faire pour effectuer la modification de ton fichier à chaque alter de la table concernée.

a voir... donne plus de détails.

Johan
Messages postés
11
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
23 octobre 2006

ben en faite je veu juste attacher un fichier xml a une table sql server comme le fais si bien access je n'ai pas besoin de le modifier juste l'utuliser en lecture pour lire des donner et je veu qu'a chaque fois que ce fichier sois modifier les tables sql server lier se modifie automatiquement voila merci ç urgent je suis grave en galere dessus lol
Messages postés
16
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2008

Bonjour,

Ok, bien compris, et dans l'ensemble, ca reste pas mal de code a faire, mais dans tous les cas, il vaudrait mieux demander ce genre de solutions sur le site de codes-sources qui lui est le plus rattaché (SQL).

Pour ma part, je pense que le mieux, serait de faire une stored procedure sous SQL Server qui irait modifier voire supprimer et ensuite re-créer la table en question à partir du squelette XML et peut etre des données inclues dans le fichier.

pour plus d'infos réfère toi a ce keyword dans l'aide d'SQL Server:










"OPENXML" c'est la methode aà utiliser par défaut. si tu cherche dans l'aide, tu trouveras ton bonheur. mais comme je t'ai déjà dit, pour le moment, je ne vois pas comment t'aider plus vu que ton problème reste trés flou.


Si besoin, contacte moi directement, parceque sans fichier de départ, je ne peux pas t'aider.

Johan

PS pour les modos: ce sujet serait peut etre mieux dans la section SQL.
Messages postés
16
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2008

Tiens un petit exemple de code pour te montrer la méthode employée pour l'injection de données dans la table, il y a aussi d'autres méthodes qui consisteraient à créer la table simultanément en se permettant ainsi de ne pas avoir de code statique.

INSERT INTO MyCustomers(CompanyName,CustomerID,ContactName,Annotations)
SELECT CompanyName, CustomerID, ContactName, overflow
FROM OpenXML(@h,'//Customer',9)
WITH (CustomerID varchar(5) '@ID',
      CompanyName varchar(32) '@name',
      ContactName varchar(32) '@ContactName',
      overflow ntext '@mp:xmltext')

et quand la procédure est faite, il te suffirais  de faire en sorte qu'un job tourne afin de voir si le fichier XML est différent ou pas, s'il l'est, tu lance la SP.

Johan
Messages postés
11
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
23 octobre 2006

merci pour ton aide precieuse je te disé donc que le fichier xml provient d'une base de donnée sql server vu que l'extension de la base ç .mdf donc si jé bien compris je dois programmer un procedure stoké qui importe les données ds une table sql server existante et programmer un job qui permet par exemple de repeter ça toute les heure pour que le fichier sois mis a jour.
mais je vois que ta requete ç un insert ça veu dire quand le fichier sera mise a jour ds ma table yaura inserer les meme données deux fois et ainsi de suite a chaque fois que j'executeré la procedure les données s'insereront en doublons??   
Messages postés
1
Date d'inscription
vendredi 13 octobre 2006
Statut
Membre
Dernière intervention
13 octobre 2006

bonjour voila j'ai un probleme j'ai un fichier xml et je voudrais a partir creer une table sql server correspondant le joindre en quelques sorte dés qu'il change la table en question change avec lui voila je sais le fair avec access mais j'arrive pas a trouver le moyen de le faire sous sql server .