XMLQUERY()WITHIN XMLATTRIBUTES()

时间:2017-03-30 09:51:54

标签: db2 sqlxml

我正在使用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()使用

欢迎任何文档或链接!

提前谢谢!

1 个答案:

答案 0 :(得分:1)

标量函数XMLQUERY返回XML值。函数XMLATTRIBUTES需要一个表达式,它返回任何类型的值,但是XML和其他一些类型。

因此,这些功能与您使用它们的方式不兼容。 DB2无法找到具有该功能签名的例程。结果是error -440

如何围绕它包装CAST / XMLCAST ......?