【问题标题】:Pull an xml schema from a sql 2005 database从 sql 2005 数据库中提取 xml 架构
【发布时间】:2009-07-10 15:11:52
【问题描述】:

在 Microsoft SQL Server 2005 中,如果您在 SQL 管理工作室中查看数据库,则可以选择在“数据库 -> 类型 -> XML 模式集合”下的数据库中存储一个 XML 模式以进行验证。

我需要做的是将架构存储在上面指定的路径下,然后在代码中拉出该架构以用于验证其他 xml 数据。有没有办法查询这个模式,以便我可以获取 xsd 文本,然后在 .net 应用程序中使用它来验证其他 xml?我只需要从数据库中提取或查询 xsd 测试的信息。

【问题讨论】:

    标签: sql xml sql-server-2005 xsd


    【解决方案1】:

    我不知道把它拉回来,但你搞错了目的。目的不是为了 SSMS。它用于验证存储在数据库中 XML 列中的 XML,用于创建 XML 索引,以及支持 XQuery。

    也就是说,我确信您可以使用 SMO 检索架构,并且可能有一个对系统表的查询会返回它。

    【讨论】:

    • 我们目前正在使用xml模式来验证数据库内的xml,但我们也需要在数据库外验证xml。我们想要一个位置来存储 xsd,而 sql server 似乎是两者的有效解决方案。这样我们就不需要将 xsd 存储在数据库内部和外部。
    【解决方案2】:

    在做了一些额外的研究之后,我发现您可以使用 sql server 中的 xml_schema_namespace 调用从数据库中查询 xsd。

    SELECT xml_schema_namespace(N'',N'OurXmlSchemaNameOnDatabase')
    

    这将查询 xsd 并返回它。更多信息可以在here找到。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 2012-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多