我必须更新下表中的limit_xml列:
TEST:
id NUMBER(32);
limit_xml XMLTYPE;
UPDATE test
SET limit_xml = '<XML>'
WHERE id = 20;
我不打算替换XML中的某些部分,而是替换完整的XML。
但是上面的sql不起作用。我认为这是由于XML内容很大。 XML包含200多个字符。
有没有办法实现这个目标?
答案 0 :(得分:0)
SQL> create table xml_tab(xml XMLType);
Table created.
SQL> insert into xml_tab values ('
2 <Common>
3 <Field>
4 <Label>Begin Date </Label>
5 <Value Name="BEG_DATE">02.05.2006</Value>
6 </Field>
7 <Field>
8 <Label>End Date</Label>
9 <Value Name="END_DATE">01.06.2016</Value>
10 </Field>
11 <Field>
12 <Label>type</Label>
13 <Value Name="TYPE">Example</Value>
14 </Field>
15 </Common>
16 ');
1 row created.
SQL> UPDATE xml_taB
2 SET xml = updateXML(xml,
3 '/DATA/Common/Field/Value[@Name="END_DATE"]/text()',
4 '02.06.2017');
1 row updated.