2012-05-15 40 views
0

我需要SELECT索姆的數據,並在列上是CLOB轉換或刪除CLOB的格式?

即時通訊目前使用TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst, 4000, 1))但這輸出CLOB,文本格式和所有,這樣的事情:

{\rtf1\ansi\deff0\deftab254{\fonttbl{...和文本faaar在那裏。

有沒有辦法讓我只獲取文本,不是所有的格式?

+1

什麼確切地存儲在您的CLOB列中?它似乎是存儲在數據庫中的格式和所有,TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst,4000,1))在這種情況下正在做它的正確工作 – mcha

+0

TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst,4000 ,1))返回「{\ rtf1 \ ansi \ deff0 \ deftab254 {\ fonttbl {\ f0 \ swiss \ fcharset0 Arial;} {\ f1 \ fnil \ fcharset0 Arial;} {\ f2 \ fnil \ fcharset0 Times New ... 「:( – Jason94

+0

@mcha DBMS_LOB.SUBSTR(T.Tekst,4000,1)返回相同的:( – Jason94

回答

3

是:您可以write stored procedures in Java。這將允許您將RTF解析器添加到數據庫,並將數據轉換爲SQL中的純文本。

請注意,這需要一些關注的表現。如果您打算在SELECT中搜索很多GB的文本,則更好的選擇是解析填充CLOB的代碼中的RTF數據,或者創建一個包含您所需數據的新表格並加上觸發器以使其保持最新狀態。