如何更新postgresql中的xml数据类型列

MAH*_*AHI 5 xml sql postgresql

PostgreSQL 版本 9.1,

我有一张桌子,

xmltest=# \d xmltest
    Table "public.xmltest"
 Column  |  Type   | Modifiers 
---------+---------+-----------
 id      | integer | not null
 xmldata | xml     | 
Indexes:
    "xmltest_pkey" PRIMARY KEY, btree (id)

xmltest=# select * from xmltest;
 id |                xmldata                
----+---------------------------------------
  1 | <root>                               +
    | <child1>somedata for child1 </child1>+
    | <child2>somedata for child2 </child2>+
    | </root> 
(1 row)
Run Code Online (Sandbox Code Playgroud)

现在如何更新元素/标签 child2 内的值,

我不喜欢立即更新整个专栏,

他们是更新/添加/删除标签的特定值的一种方法,如果是这样,请分享:)

Erw*_*ter 3

恐怕PostgreSQL XML 函数的目的是生成处理XML,而不是操纵它。

您可以使用 提取值xpath(),有许多函数可以构建 XML ,但我不知道更新给定 XML 值内的元素的内置功能。