XML类型

openGauss支持XML类型,使用示例如下:

  1. CREATE TABLE xmltest (
  2. id int,
  3. data xml
  4. );
  5. INSERT INTO xmltest VALUES (1, '<value>one</value>');
  6. INSERT INTO xmltest VALUES (2, '<value>two</value>');
  7. SELECT * FROM xmltest ORDER BY 1;
  8. id | data
  9. \----+--------------------
  10. 1 | <value>one</value>
  11. 2 | <value>two</value>
  12. (2 rows)
  13. SELECT xmlconcat('<foo/>', NULL, '<?xml version="1.1" standalone="no"?><bar/>');
  14. xmlconcat
  15. \--------------
  16. <foo/><bar/>
  17. (1 row)
  18. SELECT xmlconcat('<?xml version="1.1"?><foo/>', NULL, '<?xml version="1.1" standalone="no"?><bar/>');
  19. xmlconcat
  20. \-----------------------------------
  21. <?xml version="1.1"?><foo/><bar/>
  22. (1 row)

该功能默认未开启,如需使用,需要重新使用build.sh脚本编译数据库,修改./configure配置参数,在其中加入 —with-libxml 参数。

在执行编译之前,需要先执行yum install -y libxml2-devel,否则会有”configure: error: library ‘xml2’ (version >= 2.6.23) is required for XML support”的报错。

在执行编译之前,需要三方库二进制文件中dependeny/操作系统环境/libobs/comm/lib加入到系统环境变量LD_LIBRARY_PATH中,否则会报错”libiconv.so不存在”。