schema_to_xml()
是一个系统函数,用于将PostgreSQL模式的内容输出为XML
。
schema_to_xml()
添加于PostgreSQL 8.3。
用法
schema_to_xml (schema
name
,nulls
boolean
,tableforest
boolean
,targetns
text
)
→xml
schema
是要转换为XML的PostgreSQL模式的名称。请注意,如果提供NULL
,则函数将返回NULL
。
nulls
,当设置为true
时,将输出中的NULL
值表示为
<columnname xsi:nil="true"/>
如果nulls
设置为false
,则输出中将省略NULL
值。
tableforest
,当设置为true
时,将每个关系的列集包装在<tablename>
元素中;但是,对于空表,不会发出任何行。当设置为false
时,每个列集都包装在一个<row>
元素中,该元素包含在外层<tablename>
元素中。
targetns
指定结果的XML命名空间。如果提供空字符串,则不使用命名空间。请注意,如果提供NULL
,则函数将返回NULL
。
函数schema_to_xmlschema()
提供描述schema_to_xml()
执行的映射的XML模式文档。schema_to_xml_and_xmlschema()
组合了这两个函数的输出。
更改历史
- PostgreSQL 8.3
- 添加 (提交 0b75afda)
示例
schema_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 schema_to_xml('public', true, false, ''); schema_to_xml ---------------------------------------------------------------- <public xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">+ + <bar> + + </bar> + + <foo> + + <row> + <id>2</id> + <val xsi:nil="true"/> + </row> + + <row> + <id>1</id> + <val xsi:nil="true"/> + </row> + + </foo> + + </public> + (1 row)
参考文献
- PostgreSQL文档: 将表映射到XML