Представление типов данных XML в базе данных AdventureWorks2008R2
В базе данных База данных AdventureWorks2008R2 имеется несколько столбцов типа xml. В следующей таблице приводится список разделов, в которых дано описание этих столбцов. Эти столбцы используются в различных примерах запросов, приведенных в электронной документации по SQL Server.
В каждом разделе представлен пример экземпляра XML-данных, хранящихся в этих столбцах. Большая часть представляет собой типизированные XML-столбцы. В этих разделах представлена коллекция XML-схем, которая используется для определения типа этих столбцов. Чтобы разобраться в запросах к этим столбцам, необходимо просмотреть XML-данные, которые в них хранятся.
В этом разделе
Подраздел |
Описания |
---|---|
В базе данных База данных AdventureWorks2008R2 имеется два типа клиентов: оптовые посредники и индивидуальные клиенты. В этом столбце хранится дополнительная контактная информация в формате XML об оптовых посредниках. |
|
Хранит обзорные сведения об оптовых посредниках. |
|
Хранит обзорные сведения об индивидуальных клиентах. |
|
Хранит производственные инструкции для моделей продукта. В настоящее время хранятся инструкции для разных моделей велосипедов. |
|
Хранит описание каталога для модели продукта в формате XML. |
|
Хранит диаграммы производственных пояснений в формате XML (SVG-файл). |
|
Хранит резюме служащих в виде XML-документов. |
Большинство столбцов, рассматриваемых в этом разделе, за исключением столбца Diagram в таблице Illustration, являются типизированными столбцами xml. Дополнительные сведения см. в разделе Сравнение типизированного и нетипизированного XML. Просмотреть XML-схемы, которые используются для этих столбцов, можно на веб-узле Майкрософт.
Следующий запрос возвращает список коллекций XML-схем из базы данных База данных AdventureWorks2008R2. Дополнительные сведения о коллекциях 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 в результате возвращает следующие коллекции XML-схем в базе данных База данных AdventureWorks2008R2:
Person.AdditionalContactInfoSchemaCollection
Sales.IndividualSurveySchemaCollection
HumanResources.HRResumeSchemaCollection
Production.ProductDescriptionSchemaCollection
Production.ManuInstructionsSchemaCollection
sys.sys
Дополнительные сведения о коллекции XML-схем sys.sys см. в разделе Встроенные коллекции XML-схем (sys).
Для реконструкции коллекции XML-схем можно следующим образом использовать встроенную функцию xml_schema_namespace:
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-схем.