oracle 匯出 匯入blob型別的字段

2021-08-19 20:25:35 字數 2097 閱讀 6130

blob是oracle中的乙個資料型別,儲存的是壓縮後的二進位制形式的大資料。

資料遷移如果涉及到blob欄位,都不好處理,因為無法用常規方法進行操作,如:使用select檢視該欄位,也無法用insert插入該字段的值。

以下記錄了blob欄位的匯出、匯入方法流程。

方法原理:利用utl_file將blob欄位的內容以二進位制的形式匯出到txt文件,然後用dbms_blob將文件內容匯入到指定的資料庫表中

1、建立乙個文字文件來儲存blob資料

這裡在home目錄下建立了乙個名為test.txt的檔案,即/home/dhl/test.txt

2、建立oracle臨時目錄

create

orreplace directory utl_file_dir as

'/home/dhl/

';

3、匯出blob資料

這裡以sy_qrtz_job_details這張資料表為例子,其中的job_data就是blob型別的字段

1

declare

2file_handle utl_file.file_type;

3b_lob blob;

4begin

5select job_data into b_lob from sy_qrtz_job_details where job_name=

'2wnfkfzz14yuodhnyofezbl';

67 file_handle := utl_file.fopen('

utl_file_dir

', '

test.txt

', 'w'

);

8utl_file.put_raw(file_handle , b_lob, true);

9utl_file.fclose(file_handle);

10end;

4、將文件內容匯入到指定的資料庫表中

1

declare

2b_file bfile;

3b_lob blob;

4begin5--

return a into b_lob將該列與乙個blog型別的變數繫結在一起,以後只要為b_lob賦值,即等於將該值插入了表中

6insert

7into

sy_qrtz_job_details8(

9sched_name,

10job_name,

11job_group,

12description,

13job_class_name,

14is_durable,

15is_nonconcurrent,

16is_update_data,

17requests_recovery,

18job_data19)

20values21(

22'rhscheduler',

23'test6',

24'default',

25'test6',

26'com.rh.core.icbc.imp.nimpstatejob',

27'1'

,28'0

',29'

0',30

'0',

31empty_blob()32)

33return

job_data

34into

b_lob;

35--

將檔案轉換為bfile

36 b_file := bfilename('

utl_file_dir

', '

test.txt');

37 dbms_lob.open

(b_file, dbms_lob.file_readonly);

38--

將b_file中的內容轉換到b_lob

39dbms_lob.loadfromfile(b_lob,b_file,dbms_lob.getlength(b_file));

40 dbms_lob.close

(b_file);

41commit;42

end;

KingbaseES 匯入匯出blob列資料

kingbasees相容了oracle的blob資料型別。通常是用來儲存二進位制形式的大資料,也可以用來儲存其他型別的資料。下面來驗證一下各種資料儲存在資料庫中形式。建表create table t1 id number,file blob 插入資料 insert into t1 values 1,...

oracle匯出,匯入

匯出,在dos下執行 1.exp username userpassword databasename 可以是資料庫也可是遠端的,如username userpassword caac135 2.enter array fetch buffer size 4096 回車 3.export file ...

oracle匯入匯出

sqlplus system system egov create directory dump dir as d dbback exit expdp system system egov directory dump dir dumpfile urbanyw.dmp schemas urbanyw...