Représentation du type de données xml dans la base de données AdventureWorks2008R2

La base de données AdventureWorks2008R2 dispose de plusieurs colonnes de type xml. Le tableau suivant répertorie les rubriques de cette section décrivant ces colonnes. Ces dernières sont reprises dans divers exemples de requêtes de la documentation en ligne SQL Server.

Chaque rubrique fournit un exemple d'instance de données XML stockées dans ces colonnes. La plupart de ces éléments correspondent à des colonnes XML typé. Ces rubriques fournissent également la collection de schémas XML utilisée pour typer ces colonnes. Pour mieux comprendre les requêtes indiquées s'appliquant à ces colonnes, passez en revue les données XML issues de ces dernières.

Dans cette section

Rubrique

Descriptions

À propos de la colonne xml Contact.AdditionalContactInfo

Il existe deux types de clients dans la base de données AdventureWorks2008R2 : les revendeurs et les clients particuliers. Cette colonne stocke des informations supplémentaires relatives aux contacts sous forme de données XML se rapportant aux revendeurs.

À propos de la colonne Store.Demographics de type xml

Stocke les données générales des revendeurs.

À propos de la colonne xml Individual.Demographics

Stocke les données générales des clients particuliers.

À propos de la colonne xml ProductModel.Instructions

Stocke les instructions de fabrication des modèles de produits. Les instructions se rapportant à différents modèles de bicyclettes y sont actuellement stockées.

À propos de la colonne xml ProductModel.CatalogDescription

Contient les descriptions propres au catalogue de modèles de produits sous forme de données XML.

À propos de la colonne xml Illustration.Diagram

Contient les diagrammes explicatifs du processus de fabrication au format XML (plus précisément au format d'image vectorielle SVG).

À propos de la colonne xml JobCandidate.Resume

Stocke les CV des employés sous forme de documents XML.

La plupart des colonnes discutées dans cette section, mise à part la colonne Diagram de la table Illustration, sont des colonnes typées xml. Pour plus d'informations, consultez Comparaison du XML typé et du XML non typé. Pour afficher les schémas XML utilisés pour ces colonnes, accédez à ce site Web de Microsoft.

La requête suivante renvoie la liste des collections de schémas XML tirées de la base de données AdventureWorks2008R2. Pour plus d'informations sur la collection de schémas XML, consultez Gestion des collections de schémas XML sur le serveur.

USE AdventureWorks2008R2;
GO
SELECT *
FROM  sys.xml_schema_collections;

-- Result shows the list of XML schema collection names.
AdditionalContactInfoSchemaCollection
IndividualSurveySchemaCollection
HRResumeSchemaCollection
ProductDescriptionSchemaCollection
ManuInstructionsSchemaCollection
StoreSurveySchemaCollection

La requête suivante renvoie les noms des collections de schémas XML avec le nom de schéma relationnel :

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;

La colonne xml_collection du résultat renvoie les collections de schémas XML suivantes de la base de données AdventureWorks2008R2 :

  • Person.AdditionalContactInfoSchemaCollection

  • Sales.IndividualSurveySchemaCollection

  • HumanResources.HRResumeSchemaCollection

  • Production.ProductDescriptionSchemaCollection

  • Production.ManuInstructionsSchemaCollection

  • sys.sys

Pour plus d'informations sur la collection de schémas XML sys.sys, consultez Collection de schémas XML intégrés (sys).

Vous pouvez passer par la fonction intrinsèque xml_schema_namespace pour reconstruire la collection de schémas XML comme suit :

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

Pour plus d'informations, consultez Affichage d'une collection de schémas XML stockée.