更新时间:2022-07-29 GMT+08:00
XML类型
XML数据类型可以被用来存储XML(eXtensible Markup Language)数据。数据可以存储为text,但是XML数据类型的优势在于会检查每个存储的值是不是结构良好的XML值。XML可以存储由XML标准定义的格式良好的文档,以及由XML标准中定义的“内容”片断,内容片断中可以有多个顶级元素或字符节点。
XML类型相关的支持函数请参见XML函数。
设置XML参数
语法格式如下:
SET XML OPTION { DOCUMENT | CONTENT }; SET xmloption TO { DOCUMENT | CONTENT };
当一个字符串值在没有通过XMLPARSE或XMLSERIALIZE函数与XML类型进行转换时,选择DOCUMENT还是CONTENT是由XML OPTION会话配置参数来决定。
默认为CONTENT,表示所有形式的xml数据都被允许。
示例:
SET XML OPTION DOCUMENT; SET SET xmloption TO DOCUMENT; SET
设置二进制数据的编码格式
语法格式:
SET xmlbinary TO { base64 | hex};
示例:
SET xmlbinary TO base64; SET SELECT xmlelement(name foo, bytea 'bar'); xmlelement ----------------- <foo>YmFy</foo> (1 row) SET xmlbinary TO hex; SET SELECT xmlelement(name foo, bytea 'bar'); xmlelement ------------------- <foo>626172</foo> (1 row)
访问XML值
XML数据类型比较特殊,它不提供任何比较操作符,这是因为对于XML数据没有通用的比较算法,所以无法通过比较一个XML值和一个搜索值来检索数据行。XML数据通常应该伴随一个ID值用于检索数据。另一种比较XML值的方案是将XML值转换成字符串,但字符串的比较并不能解决常见的XML值比较场景。
父主题: 数据类型