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)

现在如何更新元素/标记child2中的值,
我不想一次更新整个专栏,
是否可以更新/添加/删除标记的特定值,如果是,请共享:)

最佳答案

PostgreSQL XML functions的目标是生成和处理xml,恐怕不是要操纵它。
您可以extract values with xpath(),有很多functions to build XML,但我不知道内置的功能可以更新给定xml值中的元素。

07-26 09:30