Importer des données XML dans Oracle (SQL Loader ou DBMS_XMLSave)

Importer des données XML dans Oracle (SQL Loader ou DBMS_XMLSave) - SQL/NoSQL - Programmation

Marsh Posté le 27-05-2008 à 10:45:40    

Bonjour,
 
Voici mon problème, je souhaiterais importer des données d'un fichier ayant une structure hiérarchique en base de données Oracle (10g).
J'ai déjà fait des tests avec les outils intégrés à Oracle comme SQL Loader ou en utilisant DBMS_XMLSAVE. Je n'ai aucun problème pour importer une table.
 
Exemple:  
Soit la table Classe suivante:
NumeroClasse Number(2)
NomClasse Varchar(20)
 
et le fichier XML contenant les données suivantes:
 
<Classe>
   <NumeroClasse>1</NumeroClasse>
   <NomClasse>A</NomClasse>
</Classe>
<Classe>
   <NumeroClasse>2</NumeroClasse>
   <NomClasse>B</NomClasse>
</Classe>
<Classe>
   <NumeroClasse>3</NumeroClasse>
   <NomClasse>C</NomClasse>
</Classe>
 
Je n'ai aucun problème pour importer ces données dans ma table Oracle en utilisant SQL loader ou DBMS_XMLSave(je peux vous joindre les scripts si vous le désirez).
 
Le problème vient quand j'essaye d'intégrer une structure plus complexe avec des liens entre les tables.
Exemple: rajoutons la table Eleves dans Oracle:
NumeroEleve Number(2)
NomEleve Varchar(20)
NumeroClasse Number(2) (fk)
 
et le fichier XML suivant:
<Classe>
   <NumeroClasse>1</NumeroClasse>
   <NomClasse>A</NomClasse>
   <ListeEleves>
       <Eleve>
             <NumeroEleve>1</NumeroEleve>
             <NomEleve>A</NomEleve>
       </Eleve>
       <Eleve>
             <NumeroEleve>2</NumeroEleve>
             <NomEleve>B</NomEleve>
       </Eleve>
       etc...
   </ListeEleves>
</Classe>
 
Comment en utilisant SQLLoader ou DBMS_XMLSave (ou DBMS_XMLStore) puis-je importer le contenu de mon fichier XML dans mes tables Oracle?
 
Merci d'avance.

Reply

Marsh Posté le 27-05-2008 à 10:45:40   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed