ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ROWID -

ROWID -

原创 Linux操作系统 作者:c4313848 时间:2009-06-01 09:30:55 0 删除 编辑
扩展的ROWID格式

OOOOOO   FFF   BBBBB     RRR

前6位(OOOOOO):数据对象编号 每个数据对象创建时都有此编号,该编号在数据库中是唯一的
之后3位(FFF)       :相关文件编号   该编号对于表空间中的每个文件是唯一的
随后6位(BBBBBB):块编号 表示包含此行的块在文件中的位置
最后3位(RRR) :行编号 标识块头中行目录位置的位置 -----------------------------------?

通过 DBMS_ROWID可以把ROWID转换为10进制格式的
SQL> select id,rowid from test01;
 
ID                                                 ROWID
-------------------------------------------------- ------------------
01                                                 AAAHx5AAMAAAAANAAA
 
SQL> select dbms_rowid.rowid_object('AAAHx5AAMAAAAANAAA') data_object#,
  2  dbms_rowid.rowid_relative_fno('AAAHx5AAMAAAAANAAA') file#,
  3  dbms_rowid.rowid_block_number('AAAHx5AAMAAAAANAAA') block#,
  4  dbms_rowid.rowid_row_number('AAAHx5AAMAAAAANAAA') row#
  5  from dual;
 
DATA_OBJECT#      FILE#     BLOCK#       ROW#
------------ ---------- ---------- ----------
       31865         12         13          0
 
SQL>

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

请登录后发表评论 登录
全部评论

注册时间:2008-11-14

  • 博文量
    26
  • 访问量
    39057