query_to_xml_and_xmlschema()
是一个系统函数,用于将查询结果映射到 XML
并生成描述映射的 XML 架构文档。
query_to_xml_and_xmlschema()
在 PostgreSQL 8.3 中添加。
用法
query to_xml_and_xmlschema (query
text
,nulls
boolean
,tableforest
boolean
,targetns
text
)
→xml
query_to_xml_and_xmlschema()
结合了 query_to_xml()
和 query_to_xmlschema()
函数的输出。有关更多详细信息,请参阅每个函数的条目。
更改历史记录
- PostgreSQL 8.3
- 添加 (提交 355e05ab)
示例
query_to_xml_and_xmlschema()
的基本用法示例
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=# SELECT query_to_xml_and_xmlschema('SELECT * FROM foo', true, true, ''); query_to_xml_and_xmlschema ------------------------------------------------------------------------------------------------ <xsd:schema + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + + <xsd:simpleType name="INTEGER"> + <xsd:restriction base="xsd:int"> + <xsd:maxInclusive value="2147483647"/> + <xsd:minInclusive value="-2147483648"/> + </xsd:restriction> + </xsd:simpleType> + + <xsd:simpleType name="UDT.postgres.pg_catalog.text"> + <xsd:restriction base="xsd:string"> + </xsd:restriction> + </xsd:simpleType> + + <xsd:complexType name="RowType"> + <xsd:sequence> + <xsd:element name="id" type="INTEGER" nillable="true"></xsd:element> + <xsd:element name="val" type="UDT.postgres.pg_catalog.text" nillable="true"></xsd:element>+ </xsd:sequence> + </xsd:complexType> + + <xsd:element name="row" type="RowType"/> + + </xsd:schema> + + <row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <id>2</id> + <val xsi:nil="true"/> + </row> + + <row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <id>1</id> + <val xsi:nil="true"/> + </row> + + (1 row)
参考文献
- PostgreSQL 文档: 将表映射到 XML
另请参阅
query_to_xml(),query_to_xmlschema(),table_to_xml_and_xmlschema(),cursor_to_xml_and_xmlschema(),database_to_xml_and_xmlschema(),schema_to_xml_and_xmlschema()