共用方式為


FOR XML 安全性考慮 (SQLXML 4.0)

適用於:SQL ServerAzure SQL 資料庫

FOR XML AUTO 模式會產生 XML 階層,其中專案名稱對應至數據表名稱和屬性名稱對應至數據行名稱。 這會公開資料庫數據表和數據行資訊。 您可以在查詢中指定資料表和資料行別名,以在使用 AUTO 模式(伺服器端格式設定)時隱藏資料庫資訊。 這些別名會在產生的 XML 檔中以元素和屬性名稱的形式傳回。

例如,下列查詢會指定 AUTO 模式;因此,XML 格式會在伺服器上完成:

SELECT C.FirstName as F,C.LastName as L   
FROM Person.Contact C   
FOR XML AUTO  

在產生的 XML 檔中,別名會用於元素和屬性名稱:

<?xml version="1.0" encoding="utf-8" ?>   
<root>  
  <C F="Nancy" L="Fuller" />   
  <CE F="Andrew" L="Peacock" />   
  <C F="Janet" L="Leverling" />   
  ...  
</root>  

當您使用 NESTED 模式(用戶端格式設定)時,別名只會針對產生的 XML 檔中的屬性傳回。 基表的名稱一律會以專案名稱傳回。 例如,下列查詢會指定 NESTED 模式。

SELECT C.FirstName as F,C.LastName as L   
FROM Person.Contact C   
FOR XML AUTO  

在產生的 XML 檔中,基表的名稱會以專案名稱和資料表別名的形式傳回:

<?xml version="1.0" encoding="utf-8" ?>   
<root>  
  <Person.Contact F="Nancy" L="Fuller" />   
  <Person.Contact F="Andrew" L="Peacock" />   
  <Person.Contact F="Janet" L="Leverling" />   
       ...  
</root>