Пример: указание XSINIL с помощью директивы ELEMENTS

В этом запросе задается директива ELEMENTS для создания из результата запроса элементного XML-документа.

Пример

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

Частичный результат.

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

Color Так как столбец имеет значения NULL для некоторых продуктов, результирующий XML-код не создаст соответствующий <Color> элемент. Добавив директиву XSINIL вместе с ELEMENTS, можно создать элемент <Color> даже для значений цвета NULL в результирующем наборе.

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

Частичный результат:

<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>  

См. также

Использование режима RAW вместе с FOR XML