Exemplo: especificar XSINIL com a diretiva ELEMENTS

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

A consulta a seguir especifica a política ELEMENTS para gerar XML centrado em elemento a partir do resultado da consulta.

Exemplo

USE AdventureWorks2022;
GO
SELECT ProductID, Name, Color
FROM Production.Product
FOR XML RAW, ELEMENTS;
GO

Este é o resultado parcial.

<row>
  <ProductID>1</ProductID>
  <Name>Adjustable Race</Name>
</row>
...
<row>
  <ProductID>317</ProductID>
  <Name>LL Crankarm</Name>
  <Color>Black</Color>
</row>

Como a coluna Color tem valores nulos para alguns produtos, o XML resultante não gerará o elemento <Color> correspondente. Adicionando a diretiva XSINIL com ELEMENTS, é possível gerar o elemento <Color> mesmo para valores de cor NULL no conjunto de resultados.

USE AdventureWorks2022;
GO
SELECT ProductID, Name, Color
FROM Production.Product
FOR XML RAW, ELEMENTS XSINIL;

Este é o resultado parcial:

<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ProductID>1</ProductID>
  <Name>Adjustable Race</Name>
  <Color xsi:nil="true" />
</row>
...
<row>
  <ProductID>317</ProductID>
  <Name>LL Crankarm</Name>
  <Color>Black</Color>
</row>

Confira também