我正在使用sql/xml
执行一些基本任务。我目前正在处理尝试在XMLQUERY()
函数中计算XMLATTRIBUTES()
时收到的错误消息。 (见下面的代码)
SELECT XMLELEMENT(NAME "Nodename",
XMLATTRIBUTES(XMLQUERY('$t//Element/text()' PASSING Info AS "t") AS "hello"))
FROM Kurs
我得到的错误消息说没有合格的例程可以运行该函数。我不能复制粘贴错误消息,因为它在瑞典语,但这应该足够了。
这也可能会有所帮助:SQLCODE = -440,SQLSTATE = 42884,DRIVER = 4.18.60
所以我的问题是(我一直在寻找答案),为什么这不起作用?我将始终从XMLQUERY
获取一个值,它应该只是转换为一个值并由XMLATTRIBUTES()
使用
欢迎任何文档或链接!
提前谢谢!
答案 0 :(得分:1)
标量函数XMLQUERY返回XML值。函数XMLATTRIBUTES需要一个表达式,它返回任何类型的值,但是XML和其他一些类型。
因此,这些功能与您使用它们的方式不兼容。 DB2无法找到具有该功能签名的例程。结果是error -440。
如何围绕它包装CAST / XMLCAST ......?