DBE_RAW
The DBE_RAW package provides interfaces for operating RAW types.
RAW data is represented as hexadecimal characters externally, and stored as binary characters internally. For example, the representation of RAW data 11001011 is 'CB', that is, the input for type conversion is 'CB'.
Interface Description
Table 1 provides all interfaces supported by the DBE_RAW package.
Interface |
Description |
---|---|
Converts an INTEGER value to a RAW value. |
|
Converts a RAW value to an INTEGER value. |
|
Returns the length of a RAW value. |
|
Converts a VARCHAR2 value to a RAW value. |
|
Converts a RAW value to a VARCHAR2 value. |
|
Returns a RAW value after bitwise OR calculation. |
|
Returns the substring of a RAW value. |
|
Returns a RAW value after bitwise AND calculation. |
|
Returns a RAW value after bitwise complement calculation. |
|
Returns a RAW value after bitwise XOR calculation. |
|
Converts a BINARY_DOUBLE value to a RAW value. |
|
Converts a RAW value to a BINARY_DOUBLE value. |
|
Converts a RAW value to a FLOAT4 value. |
|
Converts a FLOAT4 value to a RAW value. |
|
Converts a RAW value to a NUMERIC value. |
|
Converts a NUMERIC value to a RAW value. |
|
Converts a RAW value to an NVARCHAR2 value. |
|
Returns the first different position of two RAW values. |
|
Concatenates a maximum of 12 RAW values into a new RAW value and returns the value. |
|
Converts a RAW value from the source encoding mode from_charset to the target encoding mode to_charset. |
|
Copies a RAW value for n times, concatenates the values, and returns the concatenated result. |
|
Overlays one RAW data with another RAW data by specifying the start position and length to be overlaid. |
|
Reverses RAW data by byte. |
|
Converts or discards a specified byte of a RAW value. |
|
Converts a specified byte of a RAW value. |
|
Returns a RAW value containing the succession of one-byte encodings beginning and ending with the specified byte-code. |
- DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW
Converts an INTEGER value to a RAW value.
The prototype of the DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW( value IN BIGINT, endianess IN INTEGER DEFAULT 1) RETURN RAW;
Table 2 DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW parameters Parameter
Description
value
INTEGER value to be converted.
NOTE:The DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW expects to process values of the INTEGER type. For compatibility purposes, this parameter is defined as the BIGINT type. The BIGINT type has a larger range than the INTEGER type, which does not affect the interface use.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER
Converts a RAW value to an INTEGER value.
The prototype of the DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER( value IN RAW, endianess IN INTEGER DEFAULT 1) RETURN INTEGER;
Table 3 DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER parameters Parameter
Description
value
RAW value to be converted.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.GET_LENGTH
Returns the length of a RAW value.
The prototype of the DBE_RAW.GET_LENGTH function is as follows:
1 2 3
DBE_RAW.GET_LENGTH( value IN RAW) RETURN INTEGER;
Table 4 DBE_RAW.GET_LENGTH parameters Parameter
Description
value
RAW value.
- DBE_RAW.CAST_FROM_VARCHAR2_TO_RAW
Converts a VARCHAR2 value to a RAW value.
The prototype of the DBE_RAW.CAST_FROM_VARCHAR2_TO_RAW function is as follows:
1 2 3
DBE_RAW.CAST_FROM_VARCHAR2_TO_RAW( str IN VARCHAR2) RETURN RAW;
Table 5 DBE_RAW.CAST_FROM_VARCHAR2_TO_RAW parameters Parameter
Description
str
VARCHAR2 value to be converted.
- DBE_RAW.CAST_TO_VARCHAR2
Converts a RAW value to a VARCHAR2 value.
The prototype of the DBE_RAW.CAST_TO_VARCHAR2 function is as follows:
1 2 3
DBE_RAW.CAST_TO_VARCHAR2( str IN RAW) RETURN VARCHAR2;
Table 6 DBE_RAW.CAST_TO_VARCHAR2 parameters Parameter
Description
str
RAW value to be converted.
- DBE_RAW.BIT_OR
Returns the value of two RAW values after bitwise OR calculation.
The prototype of the DBE_RAW.BIT_OR function is as follows:
1 2 3 4
DBE_RAW.BIT_OR( str1 IN TEXT, str2 IN TEXT) RETURN TEXT;
Table 7 DBE_RAW.BIT_OR parameters Parameter
Description
str1
First character string of the bitwise OR calculation.
NOTE:Due to legacy reasons, this parameter is defined as the TEXT type. However, the DBE_RAW.SUBSTR interface expects to process RAW values. Defining this parameter as the TEXT type does not affect the processing of RAW values.
str2
Second character string of the bitwise OR calculation.
NOTE:Due to legacy reasons, this parameter is defined as the TEXT type. However, the DBE_RAW.SUBSTR interface expects to process RAW values. Defining this parameter as the TEXT type does not affect the processing of RAW values.
- DBE_RAW.SUBSTR
Truncates a RAW value based on the start position bit off_set and length amount.
The prototype of the DBE_RAW.SUBSTR function is as follows:1 2 3 4 5
DBE_RAW.SUBSTR( lob_loc IN BLOB, off_set IN INTEGER DEFAULT 1, amount IN INTEGER DEFAULT 32767) RETURN RAW;
Table 8 DBE_RAW.SUBSTR parameters Parameter
Description
lob_loc
Source RAW value.
NOTE:Due to legacy reasons, this parameter is defined as the BLOB type. However, the DBE_RAW.SUBSTR interface expects to process RAW values. Defining this parameter as the BLOB type does not affect the processing of RAW values.
off_set
Start position of the substring. The default value is 1.
amount
Substring length. The default value is 32767.
- DBE_RAW.BIT_AND
Obtains the bitwise AND result of two RAW values.
The prototype of the DBE_RAW.BIT_AND function is as follows:
1 2 3 4
DBE_RAW.BIT_AND( r1 IN RAW, r2 IN RAW) RETURN RAW;
Table 9 DBE_RAW.BIT_AND parameters Parameter
Description
r1
The RAW value for the bitwise AND operation with r2. The maximum length is 32767.
r2
The RAW value for the bitwise AND operation with r1. The maximum length is 32767.
- DBE_RAW.BIT_COMPLEMENT
Obtains the bitwise complement result of a RAW value.
The prototype of the DBE_RAW.BIT_COMPLEMENT function is as follows:
1 2 3
DBE_RAW.BIT_COMPLEMENT( r IN RAW) RETURN RAW;
Table 10 DBE_RAW.BIT_COMPLEMENT parameters Parameter
Description
r
The RAW value for the bitwise complement operation. The maximum length is 32767.
- DBE_RAW.BIT_XOR
Obtains the bitwise XOR result of two RAW values.
The prototype of the DBE_RAW.BIT_XOR function is as follows:
1 2 3 4
DBE_RAW.BIT_XOR( r1 IN RAW, r2 IN RAW) RETURN RAW;
Table 11 DBE_RAW.BIT_XOR parameters Parameter
Description
r1
The RAW value for the bitwise XOR operation with r2. The maximum length is 32767.
r2
The RAW value for the bitwise XOR operation with r1. The maximum length is 32767.
- DBE_RAW.CAST_FROM_BINARY_DOUBLE_TO_RAW
Converts a BINARY_DOUBLE value to a RAW value.
The prototype of the DBE_RAW.CAST_FROM_BINARY_DOUBLE_TO_RAW function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_BINARY_DOUBLE_TO_RAW ( n IN BINARY_DOUBLE, endianess IN INTEGER DEFAULT 1) RETURN RAW;
Table 12 DBE_RAW.CAST_FROM_BINARY_DOUBLE_TO_RAW parameters Parameter
Description
n
BINARY_DOUBLE value to be converted.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.CAST_FROM_RAW_TO_BINARY_DOUBLE
Converts a RAW value to a BINARY_DOUBLE value.
The prototype of the DBE_RAW.CAST_FROM_RAW_TO_BINARY_DOUBLE function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_RAW_TO_BINARY_DOUBLE( r IN RAW, endianess IN INTEGER DEFAULT 1) RETURN BINARY_DOUBLE;
Table 13 DBE_RAW.CAST_FROM_RAW_TO_BINARY_DOUBLE parameters Parameter
Description
r
The RAW value to be converted. The value contains 8 to 32767 characters.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.CAST_FROM_RAW_TO_BINARY_FLOAT
Converts a RAW value to a FLOAT4 value.
The prototype of the DBE_RAW.CAST_FROM_RAW_TO_BINARY_FLOAT function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_RAW_TO_BINARY_FLOAT( r IN RAW, endianess IN INTEGER DEFAULT 1) RETURN FLOAT4;
Table 14 DBE_RAW.CAST_FROM_RAW_TO_BINARY_FLOAT parameters Parameter
Description
r
The RAW value to be converted. The value contains 4 to 32767 characters.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.CAST_FROM_BINARY_FLOAT_TO_RAW
Converts a FLOAT4 value to a RAW value.
The prototype of the DBE_RAW.CAST_FROM_BINARY_FLOAT_TO_RAW function is as follows:
1 2 3 4
DBE_RAW.CAST_FROM_BINARY_FLOAT_TO_RAW( n IN FLOAT4, endianess IN INTEGER DEFAULT 1) RETURN RAW;
Table 15 DBE_RAW.CAST_FROM_BINARY_FLOAT_TO_RAW parameters Parameter
Description
n
FLOAT4 value to be converted.
endianess
Endianness, that is, byte order. The value can be 1, 2, or 3. The value 1 indicates BIG_ENDIAN, 2 indicates LITTLE_ENDIAN, and 3 indicates MACHINE_ENDIAN. The default value is 1. If BIG_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using BIG_ENDIAN. If LITTLE_ENDIAN is used on the host where the function is executed, the function execution result using MACHINE_ENDIAN is the same as that using LITTLE_ENDIAN.
- DBE_RAW.CAST_FROM_RAW_TO_NUMBER
Converts a RAW value to a NUMERIC value.
The bottom-layer implementation of the number data type in database A is different from that in GaussDB, and the raw data type is the hexadecimal representation of the binary stream implemented at the bottom layer. Therefore, the function in database A is different from that in GaussDB. You cannot obtain the same number-type data from GaussDB based on the raw data corresponding to the number-type data in database A. For details about the number-type data in GaussDB, see the example.
The prototype of the DBE_RAW.CAST_FROM_RAW_TO_NUMBER function is as follows:
1 2 3
DBE_RAW.CAST_FROM_RAW_TO_NUMBER( r IN RAW) RETURN NUMERIC;
Table 16 DBE_RAW.CAST_FROM_RAW_TO_NUMBER parameters Parameter
Description
r
The RAW value to be converted. The value contains 6 to 32767 characters.
- DBE_RAW.CAST_FROM_NUMBER_TO_RAW
Converts a NUMERIC value to a RAW value.
The bottom-layer implementation of the number data type in database A is different from that in GaussDB, and the raw data type is the hexadecimal representation of the binary stream implemented at the bottom layer. Therefore, the function in database A is different from that in GaussDB. You cannot restore the raw data corresponding to the number-type data in database A to the original number type in database A in the GaussDB database. For details about the performance of this function in GaussDB, see the example.
The prototype of the DBE_RAW.CAST_FROM_NUMBER_TO_RAW function is as follows:
1 2 3
DBE_RAW.CAST_FROM_NUMBER_TO_RAW( n IN NUMERIC) RETURN RAW;
Table 17 DBE_RAW.CAST_FROM_NUMBER_TO_RAW parameters Parameter
Description
n
NUMERIC value to be converted.
- DBE_RAW.CAST_FROM_RAW_TO_NVARCHAR2
Converts a RAW value to an NVARCHAR2 value.
The prototype of the DBE_RAW.CAST_FROM_RAW_TO_NVARCHAR2 function is as follows:
1 2 3
DBE_RAW.CAST_FROM_RAW_TO_NVARCHAR2( r IN RAW) RETURN NVARCHAR2;
Table 18 DBE_RAW.CAST_FROM_RAW_TO_NVARCHAR2 parameters Parameter
Description
r
The RAW value to be converted. The maximum length is 32767.
- DBE_RAW.COMPARE
Returns the first different position of two RAW values.
The prototype of the DBE_RAW.COMPARE function is as follows:
1 2 3 4 5
DBE_RAW.COMPARE( r1 IN RAW, r2 IN RAW, pad IN RAW DEFAULT NULL) RETURN INTEGER;
Table 19 DBE_RAW.COMPARE parameters Parameter
Description
r1
First data to be compared. The value can be NULL or the length is 0. The maximum length is 32767.
r2
Second data to be compared. The value can be NULL or the length is 0. The maximum length is 32767.
pad
The first byte of pad is used to extend the shorter one of r1 or r2. The maximum length is 32767. If this parameter is set to NULL, the length is 0, or the default value is used, the extended value is 0x'00'.
- DBE_RAW.CONCAT
Concatenates a maximum of 12 RAW values into a new RAW value and returns the value. If the length after concatenation exceeds 32767, an error is reported.
The prototype of the DBE_RAW.CONCAT function is as follows:1 2 3 4 5 6 7 8 9 10 11 12 13 14
DBE_RAW.CONCAT( r1 IN RAW DEFAULT NULL, r2 IN RAW DEFAULT NULL, r3 IN RAW DEFAULT NULL, r4 IN RAW DEFAULT NULL, r5 IN RAW DEFAULT NULL, r6 IN RAW DEFAULT NULL, r7 IN RAW DEFAULT NULL, r8 IN RAW DEFAULT NULL, r9 IN RAW DEFAULT NULL, r10 IN RAW DEFAULT NULL, r11 IN RAW DEFAULT NULL, r12 IN RAW DEFAULT NULL) RETURN RAW;
Table 20 DBE_RAW.CONCAT parameters Parameter
Description
r1...r12
The RAW values to be concatenated.
- DBE_RAW.CONVERT
Converts a RAW value from the source encoding mode from_charset to the target encoding mode to_charset.
If the rule for converting between source and target encoding (for example, GBK and LATIN1) does not exist, the parameter r is returned without conversion. See the pg_conversion system catalog for details.
The prototype of the DBE_RAW.CONVERT function is as follows:
1 2 3 4 5
DBE_RAW.CONVERT( r IN RAW, to_charset IN VARCHAR2, from_charset IN VARCHAR2) RETURN RAW;
Table 21 DBE_RAW.CONVERT parameters Parameter
Description
r
The RAW value to be converted. The maximum length is 32767.
to_charset
Name of the target encoding character set.
from_charset
Name of the source encoding character set. In this encoding, r must be valid.
- DBE_RAW.COPIES
Copies a RAW value for n times, concatenates the values, and returns the concatenated result. If the length after copying exceeds 32767, an error is reported.
The prototype of the DBE_RAW.COPIES function is as follows:
1 2 3 4
DBE_RAW.COPIES( r IN RAW, n IN NUMERIC) RETURN RAW;
Table 22 DBE_RAW.COPIES parameters Parameter
Description
r
The RAW values to be copied.
n
Number of copy times. The value must be a positive number.
- DBE_RAW.OVERLAY
Overlays one RAW data with another RAW data by specifying the start position and length to be overlaid.
The prototype of the DBE_RAW.OVERLAY function is as follows:1 2 3 4 5 6 7
DBE_RAW.OVERLAY( overlay_str IN RAW, target IN RAW, pos IN BINARY_INTEGER DEFAULT 1, len IN BINARY_INTEGER DEFAULT NULL, pad IN RAW DEFAULT NULL) RETURN RAW;
Table 23 DBE_RAW.OVERLAY parameters Parameter
Description
overlay_str
Byte used for overwriting. The value cannot be NULL.
target
Source byte string to be overlaid. The value is of the RAW type and contains a maximum of 32767 bytes. The value cannot be NULL.
pos
Indicates the byte from which the overlay starts. The position of the first byte is 1. The value of pos must be greater than or equal to 1 and the value of len+pos must be less than or equal to 32767. The default value is 1.
len
Length to be overlaid. The value of len must be greater than or equal to 0 and the value of len+pos must be less than or equal to 32767. The default value is the length of overlay_str.
pad
Padding byte. Only the first byte is valid. The default value is NULL. If the value is NULL, it is regarded as 0x00 by default.
- DBE_RAW.REVERSE
The prototype of the DBE_RAW.REVERSE function is as follows:
1 2 3 4
DBE_RAW.REVERSE( r IN RAW ) RETURN RAW;
Table 24 DBE_RAW.REVERSE parameters Parameter
Description
r
The RAW value to be reversed. The maximum length is 32767. If the value is NULL, NULL is returned.
- DBE_RAW.TRANSLATE
Converts or discards a specified byte of a RAW value.
The prototype of the DBE_RAW.TRANSLATE function is as follows:
1 2 3 4 5
DBE_RAW.TRANSLATE( r IN RAW, from_set IN RAW, to_set IN RAW) RETURN RAW;
Table 25 DBE_RAW.TRANSLATE parameters Parameter
Description
r
Source byte string to be converted. The value is of the RAW type and contains a maximum of 32767 bytes. The value cannot be NULL.
from_set
Bytecode to be converted in the source byte string. The value is of the RAW type. The value cannot be NULL. The bytes in from_set in the source byte string are replaced with the bytes in the corresponding positions in to_set. If from_set contains multiple identical bytes, only the first byte corresponding to the byte is replaced. For example, if r[x]=from_set[n], r[x] is replaced with to_set[n]. If to_set[n] corresponding to from_set[n] does not exist (that is, the number of bytes of to_set does not exceed n), r[x] will be discarded.
to_set
Byte code converted from the from_set byte. The value is of the RAW type. The value cannot be NULL.
- DBE_RAW.TRANSLITERATE
Converts a RAW value to a NUMERIC value.
The prototype of the DBE_RAW.TRANSLITERATE function is as follows:
1 2 3 4 5 6
DBE_RAW.TRANSLITERATE( r IN RAW, from_set IN RAW DEFAULT NULL, to_set IN RAW DEFAULT NULL, pad IN RAW DEFAULT NULL) RETURN RAW;
Table 26 DBE_RAW.TRANSLITERATE parameters Parameter
Description
r
Source byte string to be converted. The value is of the RAW type and contains a maximum of 32767 bytes. The value cannot be NULL.
to_set
Byte code converted from the from_set byte. The value is of the RAW type. The default value is NULL. If the value is NULL, all bytes in r that exist in from_set are converted to pad.
from_set
Bytecode to be converted in the source byte string r. The value is of the RAW type. The default value is NULL. If from_set is NULL, all bytes in the source byte string r are converted into equal-length data filled by pad. Otherwise, the bytes in from_set in the source byte string r are replaced with the bytes in the corresponding position in to_set. For example, if r[x]=from_set[n], r[x] is converted to to_set[n]. If to_set[n] does not exist, r[x] will be converted to pad.
pad
Padding byte. Only the first byte is valid. The default value is NULL. If the value is NULL, it is regarded as 0x00 by default.
- DBE_RAW.XRANGE
Returns a RAW value containing the succession of one-byte encodings beginning and ending with the specified byte-code.
The prototype of the DBE_RAW.XRANGE function is as follows:
1 2 3 4
DBE_RAW.XRANGE( start_byte IN RAW, end_byte IN RAW) RETURN RAW;
Table 27 DBE_RAW.XRANGE parameters Parameter
Description
start_byte
Start byte. Only the first byte is valid. If the value is NULL, it is regarded as 0x00 by default.
end_byte
End byte. Only the first byte is valid. If the value is NULL, it is regarded as 0xFF by default. If end_byte is less than start_byte, end_byte is concatenated to 0XFF, and then 0x00 is concatenated to start_byte.
Permissions
The DBE_RAW schema is a system catalog. Only the system administrator has the permission to create the DBE_RAW schema during database initialization. All users have the permission to use the schema and interfaces under the schema.
Examples
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
DECLARE v_raw RAW; v_int INTEGER; v_length INTEGER; v_str VARCHAR2; v_double BINARY_DOUBLE; v_float FLOAT4; v_numeric NUMERIC; v_nvarchar2 NVARCHAR2; BEGIN -- Convert an INTEGER value to a RAW value. SELECT DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,1) INTO v_raw; -- 000000AA SELECT DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,2) INTO v_raw; -- AA000000 SELECT DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,3) INTO v_raw; -- AA000000 -- Convert a RAW value to an INTEGER value. SELECT DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER(DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,1),1) INTO v_int; -- 170 SELECT DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER(DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,2),2) INTO v_int; -- 170 SELECT DBE_RAW.CAST_FROM_RAW_TO_BINARY_INTEGER(DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,3),3) INTO v_int; -- 170 -- Calculate the length of a RAW value. SELECT DBE_RAW.GET_LENGTH(DBE_RAW.CAST_FROM_BINARY_INTEGER_TO_RAW(170,1)) INTO v_length; -- 4 -- Convert a VARCHAR2 value to a RAW value. SELECT DBE_RAW.CAST_FROM_VARCHAR2_TO_RAW('AA') INTO v_raw; -- 4141 -- Convert a RAW value to a VARCHAR2 value. SELECT DBE_RAW.CAST_TO_VARCHAR2('4141') INTO v_str; -- AA -- Perform bitwise OR calculation on RAW values. SELECT DBE_RAW.BIT_OR('0000', '1111') INTO v_raw; -- 1111 -- Truncate a RAW value. SELECT DBE_RAW.SUBSTR('ABCD', 1, 2) INTO v_raw; -- ABCD -- Perform bitwise AND calculation on RAW values. SELECT DBE_RAW.BIT_AND('AFF', 'FF0B') INTO v_raw; -- 0A0B -- Perform bitwise complement calculation on RAW values. SELECT DBE_RAW.BIT_COMPLEMENT('0AFF') INTO v_raw; -- F500 -- Perform bitwise XOR calculation on RAW values. SELECT DBE_RAW.BIT_XOR('AFF', 'FF0B') INTO v_raw; -- F5F4 -- Convert a BINARY_DOUBLE value to a RAW value. SELECT DBE_RAW.CAST_FROM_BINARY_DOUBLE_TO_RAW(1.0001,1) INTO v_raw; -- 3FF00068DB8BAC71 -- Convert a RAW value to a BINARY_DOUBLE value. SELECT DBE_RAW.CAST_FROM_RAW_TO_BINARY_DOUBLE('3FF00068DB8BAC7',1) INTO v_double; -- 1.0001 -- Convert a RAW value to a FLOAT4 value. SELECT DBE_RAW.CAST_FROM_RAW_TO_BINARY_FLOAT('40200000',1) INTO v_float; -- 2.5 -- Convert a FLOAT4 value to a RAW value. SELECT DBE_RAW.CAST_FROM_BINARY_FLOAT_TO_RAW('2.5',1) INTO v_raw; -- 40200000 -- Convert a RAW value to a NUMERIC value. SELECT DBE_RAW.CAST_FROM_RAW_TO_NUMBER('808002008813') INTO v_numeric; -- 2.5 -- Convert a NUMERIC value to a RAW value. SELECT DBE_RAW.CAST_FROM_NUMBER_TO_RAW('2.5') INTO v_raw; -- 808002008813 -- Convert a RAW value to an NVARCHAR2 value. SELECT DBE_RAW.CAST_FROM_RAW_TO_NVARCHAR2('12345678') INTO v_nvarchar2; -- \x124Vx -- Compare RAW values. SELECT DBE_RAW.COMPARE('ABCD','AB') INTO v_numeric; -- 2 -- Concatenate RAW values. SELECT DBE_RAW.CONCAT('ABCD','AB') INTO v_raw; -- ABCDAB -- Convert RAW values. SELECT DBE_RAW.CONVERT('E695B0', 'GBK','UTF8') INTO v_raw; -- CAFD -- Copy RAW values. SELECT DBE_RAW.COPIES('ABCD',2) INTO v_raw; -- ABCDABCD -- Specify the start position and length of a RAW value to be overlaid. SELECT DBE_RAW.OVERLAY('abcef', '12345678123456', 2, 5, '9966') INTO v_raw; -- 120ABCEF999956 -- Reverse a RAW value by byte. SELECT DBE_RAW.REVERSE('12345678') INTO v_raw; -- 78563412 -- Convert bytes of the RAW type (without padding code) SELECT DBE_RAW.TRANSLATE('1122112233', '1133','55') INTO v_raw; -- 55225522 -- Convert bytes of the RAW type (with padding code) SELECT DBE_RAW.TRANSLITERATE('1122112233', '55','1133','FFEE') INTO v_raw; -- 55225522FF -- All bytes between two bytes of the RAW type. SELECT DBE_RAW.XRANGE('00','03') INTO v_raw; -- 00010203 END; / |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot