Typ=<Datatype Code> Len=<Lenght of the expression>: <Internal Representation>
This is the code for the Oracle built-in datatypes. These codes are used internally by Oracle. I don't know any other function / table except "dump" function that can return this code. For details of these datatypes codes, please refer:
Length of the expression (in bytes):
This is the length of the input expression.
Internal Representation of the input expression:
This is the notation in which you want to see the tokenized input string (comma delimited).
Syntax: dump (expression[, display_format [, start_position [, length]]] )
The exact definition of this function is (extracted from standard package)
function DUMP( e varchar2 character set any_cs,
df pls_integer := null,
sp pls_integer := null,
len pls_integer := null)
All of the above except "expression" are optional parameters. Lets discuss them one by one:
This is the input string passed to the function. Usually this is a varchar2 string but number or a date can also be passed. This is an overloaded function.
This parameters determines the representation (format) of the return value. It can have the following values:
8 octal notation
10 decimal notation
16 hexadecimal notation
17 single characters
1008 octal notation with the character set name
1010 decimal notation with the character set name
1016 hexadecimal notation with the character set name
1017 single characters with the character set name
Default display format is Decimal without characterset information (10).
The starting point from where you want to display the string. Default starting position is 1.
The lenght of the string you want to display the string upto, starting from [start_position] or from 1. Default lenght is complete length of the expression.
Lets see how it works through some examples:
DUMP('STRING') Typ=96 Len=6: 83,84,82,73,78,71 (Default display format, Decimal)
DUMP('STRING', 8 ) Typ=96 Len=6: 123,124,122,111,116,107
DUMP('STRING', 10) Typ=96 Len=6: 83,84,82,73,78,71
DUMP('STRING', 16) Typ=96 Len=6: 53,54,52,49,4e,47
DUMP('STRING', 17) Typ=96 Len=6: S,T,R,I,N,G
Another way of Tokenizing the string, hmmm
DUMP('STRING', 1008 )
Typ=96 Len=6 CharacterSet=WE8ISO8859P1: 123,124,122,111,116,107
Let's see how start_position/length works:
DUMP('STRING', 17, 3) Typ=96 Len=6: R,I,N,G
DUMP('STRING', 17, 3, 3 ) Typ=96 Len=6: R,I,N
DUMP('STRING', 3) Typ=96 Len=6: 83,84,82,73,78,71
Because this is positional notation, the value 3 is getting assigned to display_format and thus getting ignored as this value is undefined.
The function returns the string "NULL" for null value passed.
As I mentioned before, this is overloaded function and can take number/date as parameter.
DUMP(10001, 17) Typ=2 Len=4: c3,^B,^A,^B
DUMP(sysdate, 17) Typ=13 Len=8: ^G,da,^H,^L,^R,^O,2,^@
I am not able to comprehend these outputs. If someone understands it, please share.