2011-01-20 328 views
0
SELECT * FROM emp FOR XML AUTO , ROOT ('Employees') , ELEMENTS 

此查詢以xml格式返回值,但總共xml顯示在一列中,並且列名稱顯示爲動態。如果我想,我會指定列名稱,如數據等,所以xml值將顯示爲單行&列,但標題或輸出列名稱將是「數據」FOR XML AUTO和sql server 2005

是否有可能如果是的請指示我的方式.thanks

回答

1

您需要查看SQL Server 2005中新增的FOR XML PATH功能和更新 - 請閱讀SQL Server Books Online中的全部內容。

基本上,與FOR XML PATH,你可以很容易地定義你的XML的形狀,例如,

SELECT 
    EmployeeID AS '@EmployeeID', 
    FirstName, 
    LastName 
FROM dbo.Employees 
FOR XML PATH('Employee'), ROOT('AllEmployees') 

會生成XML是這樣的:

<AllEmployees> 
    <Employee EmployeeID="12345"> 
     <FirstName>John</FirstName> 
     <LastName>Doe</LastName> 
    </Employee> 
</AllEmployees> 

FOR XML PATH是非常靈活的,允許你做很多事情很容易和直觀。

+0

檢查當你在sql管理工作室執行sql與for xml路徑它仍然返回列名稱的動態。它不工作的老闆。 – Thomas 2011-01-20 18:44:50