oracle数据的存储形式

查看表结构
SQL> desc dba_objects
Name           Type          Nullable Default Comments                                                                     
-------------- ------------- -------- ------- ---------------------------------------------------------------------------- 
OWNER          VARCHAR2(30)  Y                Username of the owner of the object                                          
OBJECT_NAME    VARCHAR2(128) Y                Name of the object                                                           
SUBOBJECT_NAME VARCHAR2(30)  Y                Name of the sub-object (for example, partititon)                             
OBJECT_ID      NUMBER        Y                Object number of the object                                                  
DATA_OBJECT_ID NUMBER        Y                Object number of the segment which contains the object                       
OBJECT_TYPE    VARCHAR2(19)  Y                Type of the object                                                           
CREATED        DATE          Y                Timestamp for the creation of the object                                     
LAST_DDL_TIME  DATE          Y                Timestamp for the last DDL change (including GRANT and REVOKE) to the object 
TIMESTAMP      VARCHAR2(19)  Y                Timestamp for the specification of the object                                
STATUS         VARCHAR2(7)   Y                Status of the object                                                         
TEMPORARY      VARCHAR2(1)   Y                Can the current session only see data that it place in this object itself?   
GENERATED      VARCHAR2(1)   Y                Was the name of this object system generated?                                
SECONDARY      VARCHAR2(1)   Y                Is this a secondary object created as part of icreate for domain indexes?    
NAMESPACE      NUMBER        Y                Namespace for the object                                                     
EDITION_NAME   VARCHAR2(30)  Y                Name of the edition in which the object is actual                

创建测试表
create table system.test as select * from dba_objects



查看表数据
select * from system.test where object_id = 39

1 SYS I_OBJ4 39 39 INDEX 2011/9/17 9:46:13 2011/9/17 9:46:13 2011-09-17:09:46:13 VALID N N N 4



定位 system.test object_id =39 的数据块
begin
exec  get_block('system','test','object_id=39');
end
/
2299059 5


将数据块 dump 出来

tab 0, row 33, @0x14fe
tl: 78 fb: --H-FL-- lb: 0x0  cc: 14
col  0: [ 3]  53 59 53
col  1: [ 6]  49 5f 4f 42 4a 34
col  2: *NULL*
col  3: [ 2]  c1 28
col  4: [ 2]  c1 28
col  5: [ 5]  49 4e 44 45 58
col  6: [ 7]  78 6f 09 11 0a 2f 0e
col  7: [ 7]  78 6f 09 11 0a 2f 0e
col  8: [19]  32 30 31 31 2d 30 39 2d 31 37 3a 30 39 3a 34 36 3a 31 33
col  9: [ 5]  56 41 4c 49 44
col 10: [ 1]  4e
col 11: [ 1]  4e
col 12: [ 1]  4e
col 13: [ 2]  c1 05

可以看到   col  1: [ 6]  49 5f 4f 42 4a 34  这一行,应该对应的是object_name 

我们查询一下表数据,进行一下验证
begin
exec get_dump('system','test','OBJECT_NAME','object_id=39');
end
/

 I_OBJ4 Typ=1 Len=6: 73,95,79,66,74,52 Typ=1 Len=6: 49,5f,4f,42,4a,34


我们再看一下  LAST_DDL_TIME 的内容, col  7: [ 7]  78 6f 09 11 0a 2f 0e
begin
exec get_dump('system','test','LAST_DDL_TIME','object_id=39');
end
/

 I_OBJ4 Typ=12 Len=7: 120,111,9,17,10,47,14 Typ=12 Len=7: 78,6f,9,11,a,2f,e



根据DSI说法 char internal code :96, varchar2 Internal code: 1,NUMBER Internal code: 2,LONG Internal code: 8,DATE Internal code: 12...


我们再从逆向进行一下验证

col  1: [ 6]  49 5f 4f 42 4a 34  
根据上面记录进行一下查询

begin
exec  get_charrowvalue(' 495f4f424a34','c');
end
/

I_OBJ4
PL/SQL procedure successfully completed

col  7: [ 7]  78 6f 09 11 0a 2f 0e
根据上面记录进行一下查询
begin
exec  get_daterowvalue(' 786f09110a2f0e','d');
end
/

 
2011-09-17 09:46:13
 
PL/SQL procedure successfully completed

得到了正确数值



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7569309/viewspace-2132327/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/7569309/viewspace-2132327/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle非结构化数据分布式存储是指在Oracle数据库存储和管理非结构化数据时,采用分布式存储方式进行管理。非结构化数据是指不适合使用传统的格和列的结构进行存储和组织的数据,比如文档、图像、音频和视频等。传统的关系型数据库中处理非结构化数据的能力较弱,无法高效地存储和查询此类数据。 采用分布式存储方式可以将数据分散存储在多个节点上,通过并行处理和负载均衡的方式提高数据的处理能力和性能。Oracle非结构化数据分布式存储可以在多个节点上存储非结构化数据,并且为应用程序提供统一的访问接口。这样可以实现高可用性和可伸缩性,在面对大量的非结构化数据时依然能够快速响应和处理。 Oracle非结构化数据分布式存储的实现可以通过数据库集群的方式来实现,采用共享存储或分布式文件系统来存储非结构化数据。每个节点都可以访问整个数据集,并且可以并行地处理请求,从而提高系统的处理能力和响应速度。同时,Oracle数据库提供了丰富的功能和工具来管理非结构化数据,包括存储管理、检索和查询等。 总之,Oracle非结构化数据分布式存储是一种通过分布式存储方式来管理非结构化数据的方法。它能够提高数据的处理能力和性能,并且通过统一的接口提供方便的访问方式。这为处理大量的非结构化数据提供了有效的解决方案,同时也满足了现代应用对于高可用性和可伸缩性的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值