ORA-19240: XPTY0020 – context item must be node in an axis expression

文档解释

ORA-19240: XPTY0020 – context item must be node in an axis expression

Cause: The context item that was used in the axis epression is not a node.

Action: Change the context item to be a node.

这个错误是指在轴表达式中的上下文项必须是节点。

官方解释

当XPath在处理轴表达式时,出现ORA-19240错误,表明上下文项必须是节点,而指定的上下文是其他类型的值。

常见案例

在下面的查询中,变量$title的数据类型是xs:string,而不是节点:

SELECT XMLQUERY(‘$news//title[. eq $title]’)

FROM my_news

WHERE id = ‘123’;

一般处理方法及步骤

应该在上下文表达式中使用数据类型转换函数来转换变量$title的值,改变它的数据类型为节点:

SELECT XMLQUERY(‘$news//title[. eq xs:string($title)]’)

FROM my_news

WHERE id = ‘123’;

你可能感兴趣的