database_to_xml()

一个将数据库转换为XML的函数

database_to_xml() 是一个系统函数,用于将PostgreSQL数据库的内容输出为XML

database_to_xml() 函数于PostgreSQL 8.3中添加。

用法

database_to_xml ( nulls boolean, tableforest boolean, targetns text )
         → xml

nulls,当设置为 true 时,将在输出中以以下方式表示 NULL 值:

<columnname xsi:nil="true"/>

如果 nulls 设置为 false,则 NULL 值将从输出中省略。

tableforest 参数,当设置为 true 时,将为每个关系(relation)的列集(column set)包装在一个 <tablename> 元素中;但对于空表,则不输出任何行。当设置为 false 时,每个列集将包装在一个 <row> 元素中,该元素又包含在一个外层的 <tablename> 元素中。

targetns 指定结果的 XML 命名空间。如果提供空字符串,则不使用命名空间。请注意,如果提供 NULL,则函数将返回 NULL

当前用户没有读取权限的关系将被从输出中省略。

函数 database_to_xmlschema() 提供了描述 database_to_xml() 所执行映射的XML Schema文档。database_to_xml_and_xmlschema() 则结合了这两个函数。

变更历史

示例

database_to_xml() 的基本用法示例

postgres=# CREATE TABLE foo (id INT, val TEXT);
CREATE TABLE

postgres=# INSERT INTO foo VALUES(generate_series(1,2), clock_timestamp());
INSERT 0 2 

postgres=# CREATE TABLE bar (id INT, val TEXT);
CREATE TABLE 

postgres=# SELECT database_to_xml(true, true, '');
                         database_to_xml
------------------------------------------------------------------
 <postgres xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">+
                                                                 +
 <public>                                                        +
                                                                 +
                                                                 +
 <foo>                                                           +
   <id>2</id>                                                    +
   <val xsi:nil="true"/>                                         +
 </foo>                                                          +
                                                                 +
 <foo>                                                           +
   <id>1</id>                                                    +
   <val xsi:nil="true"/>                                         +
 </foo>                                                          +
                                                                 +
                                                                 +
 </public>                                                       +
                                                                 +
 </postgres>                                                     +

(1 row)

分类

系统函数, XML

另请参阅

database_to_xmlschema(), database_to_xml_and_xmlschema(), schema_to_xml(), table_to_xml(), query_to_xml(), cursor_to_xml()

反馈

请在此提交关于"database_to_xml()"的任何评论、建议或更正 here