|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : octobre 2010 Messages : 35 ![]() |
Bonjour,
je cherche depuis ce matin un moyen pour insérer un fichier XML dans une table SQL Server, sans passer par SSIS... rien le but de la manœuvre est d'enrichir ce fichier avec en rajoutant quelques informations depuis une autre Table (mais cela sera plus facile une fois le XML dans une table Tempo). voila un bout de mon fichier: Code :
La table Tempo sera de la sorte: Fichier|F_ANNEE| F_NUMERO|F_DATE|Demande|D_ANNEE|D_NUMERO|DATE_DEMANDE|Info_Demandeur|Info_Representant|Info_Decede|Doc1|Doc2 Le schéma de la table est a titre indicatif Merci d'avance |
||
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Nicolas SouquetAdministrateur de base de données Inscription : janvier 2005 Messages : 4 658 ![]() |
Bonjour,
SQL Server 2005 a introduit le type de données XML. Donc vous pouvez tout à fait créer une colonne ayant une colonne de ce type (ce qui impose au moins que tout document XML stocké dans une telle colonne soit correctement formé). Notez au passage que vous pouvez également vérifier votre document XML en enregistrant un schéma (CREATE XML SCHEMA COLLECTION), pour typer plus fortement votre colonne. Dans votre cas vous pouvez par exemple écrire une procédure stockée qui prenne en paramètre un document XML, et dépouiller celui-ci à l'aide de XQuery . Un exemple pour débuter : Code :
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes. Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012 |
||
|
00
|
|
|
#3 | ||
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 932 ![]() |
Pour insérer directement un fichier XML dans une table :
Code :
__________________
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 * * * * * |
||
|
00
|
|
|
#4 | ||||
|
Invité régulier
![]() Inscription : octobre 2010 Messages : 35 ![]() |
@elsuket:
merci pour Votre aide cela marche MAIS ( Code :
2/j'ai des doublons dans le (je sais pas comment on appel ça... le truc en bas.. il ressemble a une table) .... et le num demande ne correspond pas aux demandeurs (nœud parent nœud fils).... le num fichier (un seul est le même selon mon exemple) pour toutes les lignes mais pas le num demande (je dois avoir deux selon mon exemple.)!!! 3/est ce que je peux faire une boucle sur un dossier pour lire tout les fichiers XML et à chaque fois l'insérer dans ma table 4/ une petit explication du chiffre qui est entre crochées [] sera vraiment suuuper @SQLpro: j'ai essayé mais j'ai eu un message d'erreur Code :
|
||||
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 932 ![]() |
Le message est clair : vous n'avez pas le même nombre de colonne dans la table cible et dans la table source.
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 * * * * * |
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : octobre 2010 Messages : 35 ![]() |
Merci SQL PRO,
j'ai fini par créer 4 tables pour chaque noeud enfants (Demandeur, Representant, Decede et Documents) du noeud demande et donc mon fichier XML me charge maintenant 4 Tables. j'ai juste klk questions: 1/ Comment rendre dynamique le traitement sur tout un dossier qui contient plusieurs fichier XML. 2/ Est ce que je peux, dans la même requête charger mes 4 tables ou je dois le faire une par une. merci et bonne journée |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com