Oracle データベースの CLOB に含まれる xml に属性を追加するにはどうすればよいですか? UpdateXML 関数を使用して既存の属性を更新できますが、追加されません。
質問する
4252 次
3 に答える
1
with t as (
select
xmltype('<a><b c="2">1</b></a>') x,
'/a/b' node, --node where attribute located
'@d' att, --attribute name
'new' val --new value
from dual
)
select
x,
insertchildxml(deletexml(x,node||'/'||att), node, att, val) x_new
from t
于 2014-05-28T07:27:18.303 に答える
1
mytable のすべての行の clobcol 列 xml のすべての mynode 要素に「attrname=attrval」を追加する単純な Oracle SQL
update mytable s set
s.clobcol = insertchildxml(xmltype(s.clobcol)
,'//mynode'
,'@attrname'
,'attrval'
).getclobval();
于 2014-11-02T20:18:41.467 に答える
1
、、またはのdeleteXml()
いずれかと組み合わせて使用して、既存のノードを削除し、新しい属性を含めて再度追加することができます。appendChildXml()
insertChildXml()
insertXmlBefore()
于 2010-02-19T22:27:55.450 に答える