J'ai une fonction dans un package qui prend un objet de type dbms_xmlDom.DOMNode en paramètre et qui retourne un varchar2.
Dans un bloc pl, je test la fonction en affectant son résultat à une variable, j'obtient bien le résultat attendu.
Si maintenant, je fais un insert dans une table et comme value, je met la fonction, j'ai l'erreur ORA-06550 expression du mauvais type
Version ora 9.0.2
Edit par bouyao
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 declare objDoc dbms_xmlDom.DOMDocument; objNode dbms_xmlDom.DOMNode; v varchar2(10); begin v:='<root><ART><FUS></FUS></ART></root>'; objDoc:=LIBRARY.LIB_PG_XML.GetDocument(v) objNode:=dbms_xslprocessor.selectSingleNode(dbms_xmlDom.MakeNode(dbms_xmlDom.GetDocumentElement(objDoc)), '/root/ART'); insert into espion values(LIBRARY.LIB_PG_XML.GetNodeValue2(objNode)); v :=LIBRARY.LIB_PG_XML.GetNodeValue2(objNode); end;
Partager