Let see this sql query
SELECT *
FROM Customer
WHERE Id = 60
FOR XML PATH ('Customer'), ELEMENTS XSINIL, TYPE
It returns XML like this
<Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Id>60</Id>
<BranchId>5</BranchId>
<DocKind>3</DocKind>
<Document>SomeDoc</Document>
....
How can I add Column_id
as Xml attributes to each node?
This is the query returning Column_Id
's of table Customer
:
SELECT COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME),
COLUMN_NAME, 'ColumnID') AS COLUMN_ID, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Customer'
I want result like this:
<Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Id ColumnId=1>60</Id>
<BranchId ColumnId=2>5</BranchId>
<DocKind ColumnId=3>3</DocKind>
<Document ColumnId=4>SomeDoc</Document>
Here is solution: