SQL> select * from v$version where rownum<=1;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
SQL> column c2 format a20
SQL> select rowid,t.*,dump(t.c1,16) x20 from t;
ROWID ID C1 C2 X20
------------------ ---------- -------------------- -------------------- ------------------------------------------------------------
AABBg9AAIAAAACPAAA 1 test123测试 test123测试 Typ=1 Len=11: 74,65,73,74,31,32,33,b2,e2,ca,d4--注: 如果dump(t.c2,16) 会出现ORA-00932: inconsistent datatypes: expected - got CLOB.
SQL> @ lookup_rowid AABBg9AAIAAAACPAAA
OBJECT FILE BLOCK ROW
---------- ---------- ---------- ----------
268349 8 143 0
SQL> alter system checkpoint;
System altered.
BBED> set dba 8,143
DBA 0x0200008f (33554575 8,143)
BBED> p *kdbr
rowdata[0]
----------
ub1 rowdata[0] @8115 0x2c
BBED> x /rnxx
rowdata[0] @8115
----------
flag@8115: 0x2c (KDRHFL, KDRHFF, KDRHFH)
lock@8116: 0x01
cols@8117: 3
col 0[2] @8118: 1
col 1[11] @8121: 0x74 0x65 0x73 0x74 0x31 0x32 0x33 0xb2 0xe2 0xca 0xd4
col 2[54] @8133: 0x00 0x54 0x00 0x01 0x02 0x0c 0x80 0x00 0x00 0x02 0x00 0x00 0x00 0x01 0x00 0x00 0x01 0xd8 0x50 0xb3
0x00 0x22 0x09 0x00 0x00 0x00 0x00 0x00 0x00 0x12 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0x74 0x00 0x65
~~~~~~~~~~~~~~~~~~~~~~
0x00 0x73 0x00 0x74 0x00 0x31 0x00 0x32 0x00 0x33 0x6d 0x4b 0x8b 0xd5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~--对比可以发现c2字段前面有一个头,从下划线开始才是对应的信息。英文字符t对应的0x00 0x74.而中文的"测"对应的是0x6d 0x4b。
SQL> column c2 format a20
SQL> column x20 format a60
SQL> select rowid,t.*,dump(t.c1,16) x20 from t;
ROWID ID C1 C2 X20
------------------ ---------- -------------------- -------------------- ------------------------------------------------------------
AABBs5AAfAAEbfIAAA 1 test123测试 test123测试 Typ=1 Len=11: 74,65,73,74,31,32,33,b2,e2,ca,d4
SQL> @ lookup_rowid AABBs5AAfAAEbfIAAA
OBJECT FILE BLOCK ROW
---------- ---------- ---------- ----------
269113 31 1161160 0
BBED> x /rnxx
rowdata[0] @16314
----------
flag@16314:0x2c (KDRHFL, KDRHFF, KDRHFH)
lock@16315:0x01
cols@16316: 3
col 0[2] @16317: 1
col 1[11] @16320: 0x74 0x65 0x73 0x74 0x31 0x32 0x33 0xb2 0xe2 0xca 0xd4
col 2[47] @16332: 0x00 0x54 0x00 0x01 0x02 0x0c 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x01 0x00 0x00 0x02 0x29 0x85 0x91
0x00 0x1b 0x09 0x00 0x00 0x00 0x00 0x00 0x00 0x0b 0x00 0x00 0x00 0x00 0x00 0x01 0x74 0x65 0x73 0x74
~~~~~~~~~~~~~~~~~~~~~~
0x31 0x32 0x33 0xb2 0xe2 0xca 0xd4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~--对比可以发现c2字段,下划线开始保存的信息与c1内容相同。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-752202/ ,如需转载,请注明出处,否则将追究法律责任。