Directiva(clauza) XSINIL o noua functionalitate a clauzei FOR XML si anume suport pentru valorile NULL – coloanele cu valori NULL pot genera empty elements (elemente vide) cu atribututul xsi:nil prin specificarea optiunii XSINIL.
Ca exemplu rulati urmatorul cod:
USE tempdb;
GO
CREATE TABLE T(ID INT,Nume VARCHAR(64));
GO
INSERT INTO T(ID,Nume) VALUES(1,'Sorin');
INSERT INTO T(ID,Nume) VALUES(2,NULL);
GO
SELECT ID,Nume
FROM T
FOR XML RAW, ELEMENTS XSINIL;
-- Output
<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ID>1</ID>
<Nume>Sorin</Nume>
</row>
<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ID>2</ID>
<Nume xsi:nil="true" />
</row>
Fara XSINIL:
SELECT ID,Nume
FROM T
FOR XML RAW, ELEMENTS;
--Output:
<row>
<ID>1</ID>
<Nume>Sorin</Nume>
</row>
<row>
<ID>2</ID>
</row>
Cristian Andrei Lefter, SQL Server MVP
MCT, MCSA, MCDBA, MCAD, MCSD .NET,
MCTS, MCITP - Database Administrator SQL Server 2005
http://sqlserver.ro