ORA-64130: XMLIndex: invalid namespace mapping “string”
Cause: Namespace mapping was invalid. The syntax is XMLNS=”string”.
Action: Check the namespace string, correct the error and retry command.
错误说明
ORA-64130: XMLIndex错误指出无效的命名空间映射异常位于指定的字符串中。此错误提示命名空间映射没有按预期成功完成,即指出无效的或不正确的尝试,可能是由于无效的输入参数,或者在解析尝试时无法定位命名空间。
常见案例
我们可以运行语句:
SELECT *
FROM xmltable (‘/foo/Person’ PASSING xmlcolumn
COLUMNS firstname varchar2 (20) PATH’firstName’
lastname varchar2 (20) PATH ‘lastName’)
来对XML字段进行查询,但在查询时会映射一个错误的名称空间,例如:
John
Doe
在这种情况下,就会引发ORA-64130错误,因为它会找到一个无效的名称空间“http://wrongUrl.com”。
解决方法
要解决ORA-64130错误,第一步是确定错误在哪里,然后将空间映射正确设置为在XML文档中有效的UR。
首先,应使用命名空间检查器对XML进行检查,以确保它们映射到正确的命名空间UR。一旦确定正确的UR,然后,您可以尝试重新创建该索引,确保指定正确的UR:
CREATE XMLIndex idx_xml
ON xmltable
(xmlcolumn)
INDEX xmlnamespaces
(DEFAULT”https://correctUrl.com”)
使用正确的UR,你应该不会再看到这个错误。