2009-08-02 29 views
3

我試圖將某些來自CLOB的XML數據轉換爲XMLType列。將XML從CLOB列轉換爲XMLType列時出錯

XML有一些突出的字符作爲值(文檔是用法語編寫的)。

這裏是指令的樣子:

insert into mytable (id, xmldata) values (p_id, xmltype(p_xmldata)); 

p_idp_xmldata是以前從原始表中提取的變量。

我認爲法國字符可以防止XMLType正常工作。或者也許格式不正確的XML標籤?問題是,該表包含3k + XML文檔,只有2個在XMLType列中轉換。


更新:這是我得到的錯誤,當我嘗試使用簡單:

select xmltype(xmldata) from mytable 

ORA-06502: PL/SQL: numeric or value error 
ORA-06512: at "SYS.XMLTYPE", line 254 
ORA-06512: at line 1 

回答

7

我用createxml方法,現在它工作正常

insert into mytable (id, xmldata) values (p_id, xmltype.createxml(p_xmldata)); 
+0

謝謝你救了我天!!。我有同樣的錯誤。 – 2010-09-27 13:33:57