Oracle XMLTYPE:类似<;123.xml/>;不起作用

Oracle XMLTYPE:类似<;123.xml/>;不起作用,oracle,oracle11g,xmltype,Oracle,Oracle11g,Xmltype,我使用的是Oracle11g,其中我将文件名传递给一个函数,比如 FUNCTION test(file_name IN XMLTYPE) 它接受类似于的文件名,但当我将文件名作为传递时,它会抛出Oracle类型异常错误。但是,如果我将以字符开头的文件名再次传递为,则它工作正常 请告诉我需要如何处理文件名,因为不是有效的XML:标记名不能以数字开头(或或-)。维基百科上的文章对格式良好有一个很好的总结。您发布的另外两个示例是有效的XML,但是标记名格式良好 不过,您的用例看起来很奇怪。如果您想向

我使用的是Oracle11g,其中我将文件名传递给一个函数,比如

FUNCTION test(file_name IN XMLTYPE)
它接受类似于
的文件名,但当我将文件名作为
传递时,它会抛出Oracle类型异常错误。但是,如果我将以字符开头的文件名再次传递为
,则它工作正常

请告诉我需要如何处理文件名,因为

不是有效的XML:标记名不能以数字开头(或
-
)。维基百科上的文章对格式良好有一个很好的总结。您发布的另外两个示例是有效的XML,但是标记名格式良好

不过,您的用例看起来很奇怪。如果您想向该函数传递一个简单的文件名,为什么不传递一个普通字符串呢?如果您确实希望传递在XML容器中编码的文件名,这样做更有意义:

<file name="foo.bar"/>

您是如何调用该函数的?您到底遇到了什么错误?请将调用代码和整个错误堆栈添加到问题中。为什么要将文件名作为
XMLTYPE
传递,而不是作为字符串传递?