AdventureWorks2008R2 数据库中的 xml 数据类型表示形式
AdventureWorks2008R2 数据库包含若干 xml 类型列。下表列出了本部分的主题,用于说明这些列。这些列用在 SQL Server 联机丛书中的各个查询示例中。
每个主题都提供了存储在这些列中的示例 XML 数据实例。这些列中大多数都是类型化的 XML 列。这些主题提供了用来类型化这些列的 XML 架构集合。若要了解针对它们指定的查询,应查看存储在这些列中的 XML。
本节涉及的主题
主题 |
说明 |
---|---|
AdventureWorks2008R2 数据库中有两类客户:分销商和单个客户。此列将有关分销商的其他联系信息存储为 XML。 |
|
存储分销商调查数据。 |
|
存储单个客户调查数据。 |
|
存储有关产品型号的生产说明。当前存储了有关多个不同自行车型号的说明。 |
|
将产品型号目录说明存储为 XML。 |
|
将生产图解存储为 XML(SVG 格式)。 |
|
将雇员简历存储为 XML 文档。 |
本节中讨论的大多数列(Illustration 表中的 Diagram 列除外)都是类型化的 xml 列。有关详细信息,请参阅类型化的 XML 与非类型化的 XML 的比较。若要查看用于这些列的 XML 结构,请访问此 Microsoft 网站。
以下查询将从 AdventureWorks2008R2 数据库中返回 XML 架构集合的列表。有关 XML 架构集合的详细信息,请参阅管理服务器上的 XML 架构集合。
USE AdventureWorks2008R2;
GO
SELECT *
FROM sys.xml_schema_collections;
-- Result shows the list of XML schema collection names.
AdditionalContactInfoSchemaCollection
IndividualSurveySchemaCollection
HRResumeSchemaCollection
ProductDescriptionSchemaCollection
ManuInstructionsSchemaCollection
StoreSurveySchemaCollection
以下查询将返回带有关系架构名称的 XML 架构集合名称:
SELECT xsc.xml_collection_id,
s.name + '.' + xsc.name as xml_collection,
xsc.principal_id, xsc.create_date, xsc.modify_date
FROM sys.xml_schema_collections xsc
JOIN sys.schemas s
ON xsc.schema_id = s.schema_id;
结果中的 xml_collection 列返回了 AdventureWorks2008R2 数据库中的下列 XML 架构集合:
Person.AdditionalContactInfoSchemaCollection
Sales.IndividualSurveySchemaCollection
HumanResources.HRResumeSchemaCollection
Production.ProductDescriptionSchemaCollection
Production.ManuInstructionsSchemaCollection
sys.sys
有关 sys.sys XML 架构集合的详细信息,请参阅内置 XML 架构集合 (sys)。
可以使用 xml_schema_namespace 内部函数来重新构造 XML 架构集合,如下所示:
SELECT xml_schema_namespace(N'Person',N'AdditionalContactInfoSchemaCollection');
GO
SELECT xml_schema_namespace(N'HumanResources',N'HRResumeSchemaCollection');
GO
SELECT xml_schema_namespace(N'Production',N'ProductDescriptionSchemaCollection');
Go
SELECT xml_schema_namespace(N'Production',N'ManuInstructionsSchemaCollection');
GO
SELECT xml_schema_namespace(N'Sales',N'StoreSurveySchemaCollection');
GO
有关详细信息,请参阅查看存储 XML 架构集合。