Oracleデータベースにデータ型CLOB
のフィールドを持つテーブルがあります。フィールドの名前はXMLString
です。レコードごとに10,000文字のXML文字列を保存しています。このテーブルには100,000を超えるレコードがあります。
特定の場所で各レコードのXML文字列のセグメントを更新する必要があります。たとえば、14番目の各レコードを「MyNewtext」のような文字列で更新する必要があります。この置換テキストの長さは11文字です。つまり、これは単に14番目の文字から始まる11文字を置き換えることを意味します。
DBMS_LOB.FRAGMENT_REPLACE
を使おうとしましたが、思った通りではありませんでした。
次のような簡単なコマンドはありますか
Replace(XMLString, 14, ‘My New text’)
以下のようなことができるように?
UPDATE MYTABLE
SET MyClobField = Replace(MyClobField, 14, 'My New text')
WHERE MyTableID>5000
どんな助けでもいただければ幸いです。
これを試して :-
テーブルセットの更新column = replace(column、 'hello'、 'abcded')