आपके पास टाइपो और असंगत नामकरण हैं इसलिए यह बताना कठिन है कि आप वास्तव में उस त्रुटि को प्राप्त करने के लिए क्या कर रहे हैं, लेकिन यह काम करता है यदि आप string-length()
का उपयोग करते हैं length()
के बजाय अपने DB2 उदाहरण से कार्य करें (या lenght()
):
"address" varchar2(15) path 'address/(if(string-length(.)<=15) then . else "Error!")'
त्रुटि व्यवहार को ट्रिगर करने के लिए संशोधित डेटा के साथ:
select *
from XMLTABLE ('customers/*'
passing xmltype('<customers>
<customer>
<name>abc</name>
<surname>abc</surname>
<address>abc def ghi jkl mno</address>
</customer>
<customer>
<name>abc</name>
<surname>abc</surname>
<address>abc</address>
</customer>
</customers>')
columns
"address" varchar(15) path 'address/(if(string-length(.)<=15) then . else "Error!")'
) data;
address
---------------
Error!
abc