Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 在数据库中使用 XML » 以 XML 格式获取查询结果

 

使用 FOR XML 子句以 XML 格式检索查询结果

使用 SQL Anywhere 时,通过在您的 SELECT 语句中使用 FOR XML 子句,您可以针对数据库执行 SQL 查询并以 XML 文档的形式返回结果。XML 文档属于 XML 类型。

有关 XML 数据类型的信息,请参见XML 数据类型

FOR XML 子句可以用在任何 SELECT 语句中,包括子查询、使用 GROUP BY 子句或集合函数的查询,以及视图定义。

有关如何使用 FOR XML 子句的示例,请参见FOR XML 示例

SQL Anywhere 并不为由 FOR XML 子句所生成的 XML 文档生成模式。

在 FOR XML 子句中,您会指定控制所生成的 XML 的格式的三种 XML 模式中的一种:

  • RAW   通过查询得到的每一行将作为一个 <row> 元素,而每一列作为该元素的一个属性。

    有关详细信息,请参见使用 FOR XML RAW

  • AUTO   以嵌套的 XML 元素的形式返回查询结果。选择列表中引用的每一个表都会表示为 XML 中的一个元素。元素的嵌套顺序视 select-list 中表的顺序而定。

    有关详细信息,请参见使用 FOR XML AUTO

  • EXPLICIT   允许您编写包含有关正确嵌套的信息的查询,这样您就能够控制最终 XML 的形式。

    有关详细信息,请参见使用 FOR XML EXPLICIT

下面的部分介绍了 FOR XML 子句的所有三种模式:二进制数据、NULL 值和无效的 XML 名称等方面的行为。该部分还包括 FOR XML 子句的使用方法示例。


FOR XML 和二进制数据
FOR XML 和 NULL 值
对非法的 XML 名称编码
FOR XML 示例