如何选择在Oracle中注册的XML模式?

Bri*_*ent 5 oracle xsd

如何选择先前在Oracle中注册的XML模式?

例如,如果我注册了这样的模式:

DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL => 'http://test.com/my-schema.xsd',
    SCHEMADOC => '...the xsd...,
    ...
);
Run Code Online (Sandbox Code Playgroud)

我希望能够重新获得该架构,理想情况是:

select s.schemadoc
from magic_schema_table s
where s.schemaurl = 'http://test.com/my-schema.xsd'
Run Code Online (Sandbox Code Playgroud)

是否存在这种机制?

小智 5

您可以使用Datadictionary视图ALL_XML_SCHEMAS。

SELECT SCHEMA
FROM   ALL_XML_SCHEMAS
WHERE  SCHEMA_URL = 'http://test.com/my-schema.xsd';
Run Code Online (Sandbox Code Playgroud)


das*_*lvj -2

您应该在那里找到答案:XML Schema Storage and Query: Basic

更新:

我能看到的唯一可以帮助您的另一件事是为给定的对象类型生成模式。方法如下:使用 DBMS_XMLSCHEMA.GENERATESCHEMA 生成 XML 模式