Bonjour ,
je vous présente mon Problème ,
je veux extraire des tables une base oracle sur un serveur distant sous format XML alors j'ai mis en place une solution en procédure PLSQL qui importe les table de la base distant vers ma base en local (base en local version 10G avec caractère set UTF-8)
et je fait l'extraction en XML des tables importer .
les tables sont tous des VARCHAR2 , NUMBER , DATE mais il y'a des colonne VARCHAR2 contient des charactere spéciaux (&,@,",',Ø,^,.....)
le problème que la solution génère un erreur ORA 31011 sur l'un des tables
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
23
24
25
26
27
28
29
30
31 CREATE OR REPLACE PROCEDURE "GENERATEXML" ( TableToExtract VARCHAR2) AS XMLextracted CLOB; XMLContext dbms_xmlgen.ctxHandle; BEGIN XMLContext := DBMS_XMLGEN.NEWCONTEXT('select * from '||TableToExtract); DBMS_XMLGEN.SETCONVERTSPECIALCHARS (XMLContext,true); XMLextracted := DBMS_XMLGEN.GETXML(XMLContext); DBMS_XMLGEN.CLOSECONTEXT(XMLContext); .... EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(' ERROR in the fonction GenerateXML : '); DBMS_OUTPUT.PUT_LINE('code : '||sqlcode); DBMS_OUTPUT.PUT_LINE('message : '||sqlerrm); ROLLBACK; END GenerateXML;
voici un exemple de données dans l'image qui génère l'erreur
merci d'avance
Partager