RAW,類似於CHAR,聲明方式RAW(L),L為長度,以字節為單位,作為數據庫列最大2000,作為變量最大32767字節。
LONG RAW,類似於LONG,作為數據庫列最大存儲2G字節的數據,作為變量最大32760字節
建表操作:
create table raw_test (id number, raw_date raw(10));
插入raw數據操作:
insert into raw_test values (1, hextoraw('abc'));
insert into raw_test values (utl_raw.cast_to_raw('hello'));
刪除表操作:
drop table raw_test;
當使用HEXTORAW時,會把字符串中數據當作16進制數。
而使用UTL_RAW.CAST_TO_RAW時,直接把字符串中每個字符的ASCII碼存放到RAW類型的字段中.
用到的碼表通常為GB2312碼表.
RAW 是用來存儲二進制數據的。同 VARCHAR2, 它也是一個可變長度的數據類型
4、位操作函數
FUNCTION bit_and(r1 IN RAW,
r2 IN RAW) RETURN RAW;
FUNCTION bit_or(r1 IN RAW,
r2 IN RAW) RETURN RAW;
FUNCTION bit_xor(r1 IN RAW,
r2 IN RAW) RETURN RAW;
如:
select utl_raw.bit_and('12344321','0f') from dual;
select utl_raw.bit_or('12344321','0f') from dual;
select utl_raw.bit_xor('12344321','0f') from dual;
結果分別為:
02344321、1F344321、1D344321