标签: updatexml

为给定值更新Oracle XMLType列内容

我在Oracle 11g数据库中有一个表SECTION_ANSWER,它有一个XMLType列.XML非常简单,它遵循以下结构:

<section sectionID="1">
    <question questionID="1" questionType="text">
        <answer>Green</answer>
    </question>
    <question questionID="2" questionType="multiselect">
        <answer>101</answer>
        <answer>102</answer>
        <answer>105</answer>
        <answer>107</answer>
    </question>
</section>
Run Code Online (Sandbox Code Playgroud)

我需要将'105'的答案更新为'205'.我过去使用UPDATEXML做过类似的事情.例如,如果我要更新只有一个答案的questionID 1,我可以执行以下操作:

UPDATE SECTION_ANSWER sa
SET sa.section_answerxml = updatexml(sa.section_answerxml, '//section[@sectionID="1"]/question[@questionID="1"]/answer/text()', 'BLUE') 
Run Code Online (Sandbox Code Playgroud)

但是,这次更新questionID 2我遇到了麻烦,因为有多个答案节点,我不知道需要更新的内容将在哪个节点中.任何人都可以了解如何执行此类更新?

xml sql oracle xquery updatexml

6
推荐指数
1
解决办法
5174
查看次数

Oracle:如何使用updateXML更新文档中的多个节点?

我可以写:

update my_table
set xml = updateXML(xml, '/a/b', '1')
where document_id = 123
Run Code Online (Sandbox Code Playgroud)

现在,如果在同一更新查询中我也想将/ a / c设置为2(另外将/ a / b设置为1)呢?我很想写:

update my_table
set 
    xml = updateXML(xml, '/a/b', '1'),
    xml = updateXML(xml, '/a/c', '2')
where document_id = 123
Run Code Online (Sandbox Code Playgroud)

但这给了我一个“ ORA-00957:重复的列名”。关于如何做到这一点的任何建议?

xml oracle updatexml

2
推荐指数
1
解决办法
1万
查看次数

更新Oracle中CLOB列中的xml标记

我在Oracle 11g的CLOB列中有这个xml值:

<Energy xmlns="http://euroconsumers.org/notifications/2009/01/notification">    
    <Gender>M</Gender>
    <FirstName>MAR</FirstName>
    <Name>VAN HALL</Name>
    <Email/><Telephone>000000000</Telephone>
    <InsertDate>2013-10-09</InsertDate>
</Energy>
Run Code Online (Sandbox Code Playgroud)

我想为几行更新InserDate的值.

我正在使用下面的sql命令:

update tmp_tab_noemail_test p1 
set p1.sce_msg = updatexml(xmltype(p1.sce_msg),
                 '//Energy/InsertDate/text()','Not Valid').getClobVal()
Run Code Online (Sandbox Code Playgroud)

但是没有用.

您是否有一些想法只修改InsertDate的xml标记的值?

谢谢你的进步

sql oracle updatexml xmltype oracle11g

1
推荐指数
1
解决办法
9694
查看次数

标签 统计

oracle ×3

updatexml ×3

sql ×2

xml ×2

oracle11g ×1

xmltype ×1

xquery ×1