Recently, found that people making much complex code to have an XML in application. I have found that they return result set in Table to the application and have applied code to convert that data table to XML by Asp. Net application. When I review the process, I have suggested that why don’t you use the XML feature of the application. They surprised the simple use of it and make their life easy. Let me have sample query to generate XML result sets in SQL Server database.
There are two ways to have an XML from query:
1. FOR XML RAW
2. FOR XML PATH
Please find following sample queries where both of the way are being used:
Lets create sample data
DECLARE @SQLYoga TABLE(
ID INT IDENTITY,
CreatedDate DATETIME DEFAULT(GETDATE()),
INSERT INTO @SQLYoga(Data)
SELECT 'Tejas Shah'
SELECT 'Generate XML'
Generate XML with XML ROW
FOR XML RAW, ROOT('Records')
XML RAW, returns the XML by each record with row element and all columns as attributes in the XML.
Generate XML with XML PATH
FOR XML PATH('Record'), ROOT('Records')
XML PATH, returns the XML by each record with separate element and also columns as element within respected element of the record.
That’s it. It is much simple and you can get rid of the complex coding in application. Let me know your comments or issues you are facing while working on this.