我发现以下链接非常有用,但我想进一步询问它
Update xml tag in a CLOB column in Oracle
在上一篇文章中使用相同的数据:
create table tmp_tab_noemail_test (sce_msg clob);
insert into tmp_tab_noemail_test values (
'<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>');
update tmp_tab_noemail_test p1
set p1.sce_msg = updatexml(xmltype(p1.sce_msg),
'/Energy/InsertDate/text()','Not Valid',
'xmlns="http://euroconsumers.org/notifications/2009/01/notification"').getClobVal();
现在,如果我想查看另一个表帐户,该怎么办?它有列:acct_num
,name
,date_of_birth
如何更新InsertDate tag value = Account.date_of_birth where Name tag value = Account.name
?
有可能吗?谢谢!
答案 0 :(得分:0)
如果我正确理解了这个问题,那么您可以从Name
中提取rowid
和tmp_tab_noemail_test
,将其与Account
表连接,获取更新的xml并使用{{1 (通过rowid)目标文件夹中的更新 -
merge