關於oracle中blob欄位查詢的問題

2021-08-04 04:55:59 字數 704 閱讀 3086

最近在用oracle的過程中用到了對blob欄位模糊查詢的問題,對oracle來說,我並不是高手,找了很多的資料終於能夠查出來了。

blob欄位直接用 select   * from  table_name  where  column  like 『%%』查詢的時候是不能實現的 ,主要是字段型別不符,就想到了字段轉換成varchar2型別,然後再進行查詢

select * from table_name   where utl_raw.cast_to_varchar2(column)  like  『%oracle%』;   但是卻報如下的錯誤:

在這之後作了修改:

select * from table_name where utl_raw.cast_to_varchar2(dbms_lob.substr(column,2000,1)) like '%oracle%' ;

這樣之後就可以實現查詢了,但是這樣的查詢總是有些不妥,在網上看到有dbms_lob.instr這個函式,可以直接實現查詢功能。參考中所介紹的具體用法,修改如下:

select * from table_name  where dbms_lob.instr(column,utl_raw.cast_to_raw('所要匹配的內容'),1,1)<>0;

這樣就可以順利的查詢出來了。

以上只是自己做了個簡單的處理,相信肯定有更好的方法,希望大家幫忙,但是感覺dbms_lob函式下的方法真的很好用。

Oracle中的BLOB和CLOB欄位

一般為了更好的管理oracle資料庫,通常像 檔案 等資訊就用blob欄位來儲存,先將檔案轉為二進位制再儲存進去。而像文件或者是較長的文字,就用clob儲存,這樣對以後的查詢更新儲存等操作都提供很大的方便。1.blob blob全稱為二進位制大型物件 binary large object 它用於儲...

對oracle中BLOB欄位讀寫的總結

oracle 中的blob 也到網上查了不少資料,感覺網上的資料都或多或少有些錯務,最後通過自己的反覆測試總算解決了,解決的過程中,還真有不少收穫,這裡還是寫下來,和朋友們分享一下!1.個人感覺對於 mysql 中blob 型別的字段 sql server 中的image 型別的字段,oracle ...

對oracle中BLOB欄位讀寫的總結

對於oracle中的寫 上傳檔案 第一步 先向blob欄位中先插入乙個空的blob值,用empty blob 如 insert into webfiles path,filename,username,job no,orderfile values empty blob 第二步再用select fo...