日期:2013-10-08  浏览次数:20608 次

可选元素
 
示例可以让我们对各种设置的内部任务机理有更多的了解,下面我们就进一步研讨下FOR XML语句的可选元素XMLDATA。

如果你设置该选项,那么XML-Data schema就会包含在结果集合里。以下是SQL语句:
SET ROWCOUNT 3
SELECT Orders.OrderID, Orders.OrderDate, ProductID
FROM Orders, [Order Details]
WHERE Orders.OrderID = [Order Details].OrderID
ORDER BY Orders.OrderID
FOR XML AUTO, XMLDATA

以上的SQL语句产生以下结果:
<Schema name="Schema2" xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="Orders" content="eltOnly" model="closed" order="many"><element type="Order_x0020_Details" maxOccurs="*"/>…

ELEMENTS
ELEMENTS选项指示各数据列作为子元素而非属性前往。假如你采用AUTO模式就可以只采用该选项。

BINARY BASE64
使用该选项表示你希望采用base64编码格式表示二进制数据。

采用XML子句的说法可就多了,你最好参考下SQL在线图书。
在线指南
SQL Server在线图书 对FOR XML子句的用法进行了阐述。而且还提到了在使用这一子句时要留意的多项限制。比方说,FOR XML字句不能同视图定义或者COMPUTE BY子句合用。你不妨参考有关文档了解更多细节。

本文只是对FOR XML子句的简单说明,这里要提示你的是这一部分不过是XML同SQL Server集成需求留意的一点,其他方面的问题还包括IIS的OPENXML 函数和模版文件等。看来真是这样,SQL Server的每个毛孔都滴着XML这种东西。