2013-05-28 103 views
-1

我有一個包含大量XML的CLOB列。我想在XML中添加一個新的屬性,這樣的屬性:在Oracle中更新CLOB XML

<name>me</name> 

我嘗試使用UpdateXML但我沒有得到它的權利。

+1

你可以添加一個你嘗試過的例子嗎? –

+1

歡迎來到SO。請閱讀 - http://stackoverflow.com/questions/how-to-ask – OldProgrammer

回答

2
CLOB

使用XMLType()XMLType被轉換使用to_clobCLOB到轉化爲XMLType。以下是一個例子。

create table table_with_clob (myclob clob); 

insert into table_with_clob values ('<mytag><subtag>hello world</subtag></mytag>'); 

UPDATE table_with_clob SET myclob = 
    to_clob(INSERTCHILDXML(xmltype(myclob), 
    '/mytag', 'subtag', 
    XMLType('<subtag>another</subtag>'))); 

select * from table_with_clob; 

輸出

myclob 
------ 
<mytag><subtag>hello world</subtag><subtag>another</subtag></mytag> 

雖然我覺得這是不是很有效,你可能列更好地轉換爲XMLType的,並與它的工作。