Je dois retourner un alias de colonne contenant des espaces en XML à partir de SQL Server. XML devrait ressembler à ceci:SQL Server: spécifiez le nom de la colonne en tant qu'attribut et valeur de nœud FOR XML
<Records>
<Record>
<Field FieldName="PURCHASE_DETAIL_ID">31320</Field>
<Field FieldName="ORDER_ID">6507</Field>
<Field FieldName="PRODUCT_ORDER">1</Field>
</Record>
</Records>
Ma table ressemble:
PURCHASE_DETAIL_ID | ORDER_ID | PRODUCT_ORDER
----------------------------------------------------
31320 6507 1
Je voudrais utiliser la méthode d'extraction FOR XML
XML.
J'ai essayé ce qui suit, cela fonctionne bien pour une seule colonne, mais pas pour plusieurs.
SELECT
'PURCHASE_DETAIL_ID' AS [Field/@FieldName],
'GOLI' + RTRIM(CONVERT(VARCHAR(10), ol.ID)) AS [Field],
'ORDER_ID' AS [Field/@FieldName],
o.ID AS [Field],
'PRODUCT_ID' AS [Field/@FieldName],
P.ID AS [Field]
FROM ...
WHERE ...
FOR XML PATH('Record'), ROOT('Records')
'' est la nouvelle chose que vous avez ici ... –