Informix二進位制資料裝載問題的解決辦法

2021-08-21 04:02:09 字數 1933 閱讀 5251

informix下大物件(blob和cblob)的處理機問題的解決辦法

informix下大物件(blob和cblob)的處理機問題的解決辦法

在informix資料庫中大物件blob和cblob處理出錯的分析和解決辦法:

1:分析:

informix資料庫中大物件儲存在分為兩大類:

簡單大物件:text、byte物件,他們存放在blob表空間(普通表空間)中,如果ids系統沒有建立blob表空間,或缺省沒有時,儲存可能出錯。

智慧型化大物件:blob、clob物件,他們存放在sbspace表空間(智慧型化表空間)中,如果ids系統沒有建立sbspace表空間,或缺省沒有時,儲存可能出錯。錯誤資訊為沒有sbspace表空間存在

故我們在使用大物件時首先要檢查是否建立相應的表空間:檢查命令:onstat –d,顯示:

dbspaces

address number flags fchunk nchunks flags owner name

c9e27d0 1 0x1 1 1 n informix rootdbs

c9e2ab8 2 0x1 2 1 n informix ol_infxcrm

c9e2c00 3 0x8001 3 1 n s informix sbspace

c9e2d48 4 0x1 4 1 n informix datadbs1

c9e2e90 5 0x1 5 2 n informix db_data_info

cd4f018 6 0x2001 6 1 n t informix db_temp_info

cde83b8 7 0x8001 8 1 n s informix mydatasbsp

cdf7548 8 0xa001 9 1 n s informix mydatatsbsp

8 active, 2047 maximum

如果flags標誌中有s表示已建立智慧型化大物件空間,如果沒有採用下面命令建立:

建立永久儲存空間:

onspaces -c -s mydatasbsp -p d:\informix\crmdb\db_sb_infomix.dat -o 0 -s 100000

其中:: d:\informix\crmdb\db_sb_infomix.dat 表示檔案存放路徑可以改,如果為unix或linux系統時:為/informix/infxdata/db_sb_informix.data。如果檔案不存在先建立檔案:unix為:touch db_sb_informix.data 就可以了。

2:表使用的表空間的正確性

在預設情況下,我們在建立資料庫時指定了使用的表空間,當在建表時系統預設為建立的表使用預設的表空間。但大物件在創表時一定要指定相應的表空間物件:其建立表的格式為:

create table blob_test(

id integer,

name varchar(20),

data blob,

primary key (id) constraint pk_blob_test

);alter table blob_test put data in (sbspace);

3:最後一種情況是在前邊都配置好的時候由於驅動程式的版本不正確導致資料大物件操作失敗,建議採用informix jdbc driver2.21.jc5這個版本的驅動程式,經過測試,比較穩定。

4.也可以使用如下方式:

a、建立存放大物件的空間

touch /home/informix/sbspaces/emos_integ_sp

onspaces -c -s emos_integ_sp -p /home/informix/sbspaces/emos_integ_sp -o 500 -s 20480

b、修改$informixdir/etc/onconfig檔案中的設定屬性sbspacename 

sbspacename  emos_integ_sp

c、重新啟動資料庫

二進位制 二進位制起源

現代通訊技術的基礎是二進位制編碼。早在1865年麥克斯韋總結出麥克斯韋方程組之前,美國人摩斯 morse 於1837年發明了摩斯電碼和有線電報。有線電報的出現,具有劃時代的意義 它讓人類獲得了一種全新的資訊傳遞方式,這種方式 看不見 摸不著 聽不到 完全不同於以往的信件 旗語 號角 烽火,這也是二進...

二進位制資料

今天的問題是處理。本來想在資料庫中只存儲存路徑的,但是同組的同事說別那樣,還是直接存比較好,雖然不知道為什麼一定要存,但是或許他說的有道理吧,至於為什麼暫時還沒想通。處理二進位制遇到的第乙個問題是讀寫的問題,data open filepath,rb data open filepath,wb 作為...

判斷二進位製半整數(二進位制)

10年後,tokitsukaze大佬已經變成了年收入超百萬的的精英程式設計師,家裡沒錢也沒礦的teitoku,找tokitsukaze大佬借1000塊錢,然後tokitsukaze大佬說,借你1024吧,湊個整數。沒錯在2進製下1024是 二進位制整數 乙個正整數滿足其值為2的k次方 k為正整數 我...