Bonjour à tous,
je souhaiterai avoir des infos sur la manière de générer un flux XML correctement indenter à partir d'une requete sql, et recuperer ce flux sur une table temporaire
Ma requête est la suivante : j'ai un adhérent (niveau 1) qui effectue plusieurs événements (niveau 2) qui ont chacun des propriétés différentes

Voici la requête que j'ai créer :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
create table temp_emp_xml (xml xmltype);
 
declare
  qryctx dbms_xmlgen.ctxhandle;
  result clob;
begin
  qryctx := dbms_xmlgen.newcontext('SELECT a.adhe_no_adhes,
                                                                         a.adhe_nom_ass,
                                                                         a.adhe_prenom_ass,
                                                                         e.even_typ_evt,
                                                                         e.even_dat_eff,
                                                                         e.even_mnt_brut
                                                            from adhesions a,
                                                                    evenements e
                                                          WHERE  a.adhe_no_adhes = e.even_no_adhes       
                                                          AND e.even_no_adhes =40' 
                                                         );
  dbms_xmlgen.setrowtag(qryctx,'Adhesion_Evenements');
  result:=dbms_xmlgen.getxml(qryctx);
  insert into temp_emp_xml values(XMLType(result));
  dbms_xmlgen.closecontext(qryctx);
end;
lorsque j’exécute mon select :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
select * from temp_emp_xml;
celui ci sort à plat sans aucune indentation.

Si vous avez des idées .....

Merci d'avance