Utilisation du mode RAW
Le mode RAW transforme chaque ligne du jeu de résultats de la requête en un élément XML contenant l'identificateur générique <row> ou le nom d'élément éventuellement fourni. Par défaut, chaque valeur de colonne dans l'ensemble de lignes qui n'est pas NULL est mappée à un attribut de l'élément <row>. Si la directive ELEMENTS est ajoutée à la clause FOR XML, chaque valeur de colonne est mappée à un sous-élément de l'élément <row>. Avec la directive ELEMENTS, vous pouvez éventuellement spécifier l'option XSINIL pour mapper les valeurs de colonnes NULL dans le jeu de résultats à un élément qui possède l'attribut xsi:nil="true".
Vous pouvez demander un schéma pour les données XML résultantes. Spécifier l'option XMLDATA permet de retourner un schéma XDR en ligne. Spécifier l'option XMLSCHEMA permet de retourner un schéma XSD en ligne. Le schéma apparaît au début des données. Dans le résultat, la référence à l'espace de noms du schéma est répétée pour chaque élément de niveau supérieur.
L'option BINARY BASE64 doit être spécifiée dans la clause FOR XML pour retourner les données binaires dans un format codé en base 64. En mode RAW, la récupération de données binaires sans spécification de l'option BINARY BASE64 génère une erreur.
Exemples
Les requêtes des exemples ci-dessous montrent comment utiliser le mode FOR XML RAW avec différentes options. Un grand nombre de ces requêtes sont spécifiées sur les documents XML d'instructions de fabrication de vélos, stockés dans la colonne Instructions de la table ProductModel. Pour plus d'informations sur les instructions XML, consultez Représentation du type de données xml dans la base de données AdventureWorks.
Dans cette section
Cette section contient les exemples suivants :
Exemple : récupération des informations de modèle de produit au format XML
Exemple : Spécification de XSINIL avec la directive ELEMENTS
Exemple : demande de schémas comme résultats à l'aide des options XMLDATA et XMLSCHEMA
Exemple : spécification d'un élément racine pour les données XML générées par FOR XML