UTL_RAW
接口介绍
高级功能包UTL_RAW支持的所有接口请参见表1。
接口名称 |
描述 |
---|---|
将INTEGER类型值转换为二进制表示形式(即RAW类型)。 |
|
将二进制表示形式的整型值(即RAW类型)转换为INTEGER类型。 |
|
获取RAW类型对象的长度。 |
|
将VARCHAR2类型值转化为二进制表示形式(即RAW类型)。 |
RAW类型的外部表现形式是十六进制,内部存储形式是二进制。例如一个RAW类型的数据11001011的表现形式为‘CB’,即在实际的类型转换中输入的是‘CB’。
- UTL_RAW.CAST_FROM_BINARY_INTEGER
存储过程CAST_FROM_BINARY_INTEGER将INTEGER类型值转换为二进制表示形式(即RAW类型)。
UTL_RAW.CAST_FROM_BINARY_INTEGER函数原型为:
1 2 3 4
UTL_RAW.CAST_FROM_BINARY_INTEGER ( n IN INTEGER, endianess IN INTEGER) RETURN RAW;
- UTL_RAW.CAST_TO_BINARY_INTEGER
存储过程CAST_TO_BINARY_INTEGER将二进制表示形式的整型值(即RAW类型)转换为INTEGER类型。
UTL_RAW.CAST_TO_BINARY_INTEGER函数原型为:
1 2 3 4
UTL_RAW.CAST_TO_BINARY_INTEGER ( r IN RAW, endianess IN INTEGER) RETURN BINARY_INTEGER;
- UTL_RAW.LENGTH
UTL_RAW.LENGTH函数原型为:
1 2 3
UTL_RAW.LENGTH( r IN RAW) RETURN INTEGER;
表4 UTL_RAW.LENGTH接口参数说明 参数
描述
r
RAW类型对象
- UTL_RAW.CAST_TO_RAW
存储过程CAST_TO_RAW将VARCHAR2类型的对象转换成RAW类型。
UTL_RAW.CAST_TO_RAW函数原型为:
1 2 3
UTL_RAW.CAST_TO_RAW( c IN VARCHAR2) RETURN RAW;
表5 UTL_RAW.CAST_TO_RAW接口参数说明 参数
描述
c
待转换的VARCHAR2类型对象
示例
在存储过程中操作RAW数据:
1 2 3 4 5 6 7 8 9 10 11 |
CREATE OR REPLACE PROCEDURE proc_raw AS str varchar2(100) := 'abcdef'; source raw(100); amount integer; BEGIN source := utl_raw.cast_to_raw(str);--类型转换 amount := utl_raw.length(source);--获取长度 dbms_output.put_line(amount); END; / |
调用存储过程:
1
|
CALL proc_raw(); |