mssql中提供了乙個功能,能夠分塊讀取blob欄位中的資料,寫了乙個儲存過程**如下:
create procedure pro_get_file_data
@pkg_id int,
@ver varchar(50),
@start int,
@count int
as begin
--定義指標變數,必須為varbinary(16)
declare @ptrval varbinary(16);
--定義指標指向
select @ptrval = textptr(file_data)
from t_sys_pkg_file
where pkg_id = @pkg_id //獲取某條記錄的條件
and file_ver = @ver;
--獲取資料
if @ptrval is not null
readtext t_sys_pkg_file.file_data @ptrval @start @count;
end;
這個功能最大的好處就是:可以讀取blob欄位中的任意一部分資料。我主要使用在客戶端執行檔案公升級。
1、把客戶端所有業務封裝到dll中,由主程式呼叫時,載入dll及其業務模組;
5、暫適用於mssql,oracle的還沒有想好。
分塊讀取Blob欄位資料 Oracle
試過了mssql的分塊讀取blob欄位,又嘗試在oracle下完成,發現還是可行的。首先建立乙個儲存過程 create or replace procedure pro get blob i pkgid in integer,檔案id i mount in integer,複製資料數量 byte i...
BLOB欄位資料讀取
因為開發的時候公司的專案,所以只能說明不能截圖了,在這裡請大家諒解。blob這個字段,首先是存大資料的,本人倒是不建議在資料庫中存入那麼大的資料,影響伺服器效能。而且如果表沒有採用分布儲存,沒有考慮維護,一段時間就會很大,本人一點見解,表大小超過1g的容量時候,明顯影響資料讀取速度。這個扯的有點遠了...
顯示table欄位資料
select case when a.colorder 1 then d.name else end 表名,a.colorder 字段序號,a.name 欄位名,case when columnproperty a.id,a.name,isidentity 1 then else end 標識,ca...