[英]Update a column of XMLTYPE using a SQL query
我必须更新下表中的limit_xml列:
TEST:
id NUMBER(32);
limit_xml XMLTYPE;
UPDATE test
SET limit_xml = '<XML>'
WHERE id = 20;
我不打算替换XML中的某些部分,而是替换整个XML。
但是上面的sql不起作用。 我认为这是由于XML内容庞大。 XML包含200多个字符。
有没有办法做到这一点?
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.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.