如何正确的使用Oracledump函数


如何正确的使用Oracledump函数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一、函数标准格式:
DUMP(expr[,return_fmt[,start_position][,length]])基本参数时4个,最少可以填的参数是0个。当完全没有参数时,直接返回null。另外3个参数也都有各自的 默认值
expr:这个参数是要进行分析的表达式(数字或字符串等,可以是各个类型的值)
return_fmt:指返回参数的格式,有5种用法:
1)8:以8进制返回结果的值
2)10:以10进制返回结果的值(默认)
3)16:以16进制返回结果的值
4)17:以单字符的形式返回结果的值
5)1000:以上4种加上1000,表示在返回值中加上当前字符集
start_position:开始进行返回的字符位置
length:需要返回的字符长度二、示例SYS@ tsid> select dump(‘abc’) from dual;DUMP(‘ABC’)
———————-
Typ=96 Len=3: 97,98,99
SYS@ tsid> select dump(‘abc’,16) from dual;DUMP(‘ABC’,16)
———————-
Typ=96 Len=3: 61,62,63
SYS@ tsid> select dump(‘abc’,1016) from dual;DUMP(‘ABC’,1016)
——————————————–
Typ=96 Len=3 CharacterSet=ZHS16GBK: 61,62,63
SYS@ tsid> select dump(‘abc’,17,2,2) from dual;DUMP(‘ABC’,17,2,2
—————–
Typ=96 Len=3: b,c
结果的格式一般都是类似:Typ=96 Len=3 [CharacterSet=ZHS16GBK]: 61,62,631、typetyp表示当前的expr值的类型。如:2表示NUMBER,96表示CHAR。CODE TYP
—– ——————————
1 VARCHAR2
2 NUMBER
8 LONG
12 DATE
23 RAW
24 LONG RAW
69 ROWID
96 CHAR
112 CLOB
113 BLOB
114 BFILE
180 TIMESTAMP
181 TIMESTAMP WITH TIMEZONE
182 INTERVAL YEAR TO MONTH
183 INTERVAL DAY TO SECOND
208 UROWID
231 TIMESTAMP WITH LOCAL TIMEZONE
2、lenlen表示该值所占用的字节数。对于汉字,ZHS16GBK编码一个汉字需要2个字节,UTF8需要3个字节。SQL> select dump(‘多多’,1010) from dual;
DUMP(‘多多’,1010)
——————————————————-
Typ=96 Len=6 CharacterSet=UTF8: 229,164,154,229,164,154
SQL> select dump(‘多多’,1010) from dual;

DUMP(‘多多’,1010)
—————————————————
Typ=96 Len=4 CharacterSet=ZHS16GBK: 182,224,182,224
3、 Value
具体的存储值。返回的数值就是Oracle在自己内部对前面的这个expr值得存储形式。对于非汉字的普通字符 串,可以理解为就是它的ASCII码。举例证明:
SYS@ tsid > select dump(‘a=?5’) from dual;DUMP(‘A=?5’)
————————-
Typ=96 Len=4: 97,61,63,53
SYS@ tsid > select chr(97),chr(61),chr(63),chr(53) from dual;C C C C
– – – –
a = ? 5
SYS@ tsid > select ascii(‘a’),ascii(‘=’),ascii(‘?’),ascii(‘5’) from dual;ASCII(‘A’) ASCII(‘=’) ASCII(‘?’) ASCII(‘5’)
———- ———- ———- ———-
97 61 63 53ASCII码表:
ASCII值
控制字符
ASCII值
控制字符
ASCII值
控制字符
ASCII值
控制字符
0
NUT
32
(space)
64
@
96

1
SOH
33

65
A
97
a
2
STX
34

66
B
98
b
3
ETX
35
#
67
C
99
c
4
EOT
36
$
68
D
100
d
5
ENQ
37
%
69
E
101
e
6
ACK
38
&
70
F
102
f
7
BEL
39
,
71
G
103
g
8
BS
40
(
72
H
104
h
9
HT
41
)
73
I
105
i
10
LF
42
*
74
J
106
j
11
VT
43
+
75
K
107
k
12
FF
44
,
76
L
108
l
13
CR
免费云主机域名 45

77
M
109
m
14
SO
46
.
78
N
110
n
15
SI
47
/
79
O
111
o
16
DLE
48
0
80
P
112
p
17
DCI
49
1
81
Q
113
q
18
DC2
50
2
82
R
114
r
19
DC3
51
3
83
X
115
s
20
DC4
52
4
84
T
116
t
21
NAK
53
5
85
U
117
u
22
SYN
54
6
86
V
118
v
23
TB
55
7
87
W
119
w
24
CAN
56
8
88
X
120
x
25
EM
57
9
89
Y
121
y
26
SUB
58
:
90
Z
122
z
27
ESC
59
;
91
[
123
{
28
FS
60

92
/
124
|
29
GS
61
=
93
]
125
}
30
RS
62
>
94
^
126
~
31
US
63
?
95

127
DEL 看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注百云行业资讯频道,感谢您对百云的支持。

相关推荐: PL/SQL结构

PL/SQLSQL[DECLARE… –]BEGIN… –[EXCEPTION… –]END;————————————-DECLAREa NUMBER;BEGINa:=1+2;DBMS_OUTP…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 01/04 10:04
下一篇 01/04 10:06