Utiliser le mode RAW avec FOR XML
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance
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 encodé 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.
Étapes suivantes
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
- Demander des schémas comme résultats à l’aide de XMLDATA et XMLSCHEMA
- Exemple : extraction de données binaires
- Exemple : renommer l'élément de la <ligne>
- Exemple : spécification d’un élément racine pour les données XML générées par FOR XML
- Exemple : interrogation de colonnes de type XML