RE: Convert ROWID from Leaf Block Dump

  • From: Jonathan Lewis <jonathan@xxxxxxxxxxxxxxxxxx>
  • To: "oracle-l@freelists org" <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 23 Feb 2016 16:51:54 +0000



Look at package dbms_rowid.
  1  select
  2     dbms_rowid.rowid_object('AAAFDFAAEAAAALyAAe') data_object_id ,
  3     dbms_rowid.rowid_relative_fno('AAAFDFAAEAAAALyAAe') ts_relative_file,
  4     dbms_rowid.rowid_block_number('AAAFDFAAEAAAALyAAe') block_number,
  5     dbms_rowid.rowid_row_number('AAAFDFAAEAAAALyAAe') row_in_block
  6* from dual
SQL> /

DATA_OBJECT_ID TS_RELATIVE_FILE BLOCK_NUMBER ROW_IN_BLOCK
-------------- ---------------- ------------ ------------
         20677                4          754           30

The file and block number procedures have a second parameter to tell them 
whether the object is in a smallfile or bigfile tablespace (default small); 
there's also an "absolute" file number procedure but you have to know the 
schema and object name - which you can derive from the data_object_id.


Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
@jloracle
________________________________
From: oracle-l-bounce@xxxxxxxxxxxxx [oracle-l-bounce@xxxxxxxxxxxxx] on behalf 
of Michael Cunningham [napacunningham@xxxxxxxxx]
Sent: 23 February 2016 16:35
To: oracle-l@freelists org
Subject: Convert ROWID from Leaf Block Dump

Hello list, does anyone know how to convert the rowid info in a leaf block dump 
to a real rowid?

For example, I have this
col 1; len 6; (6):  01 00 02 f2 00 1e

The rowid for the row in the table is AAAFDFAAEAAAALyAAe.

I'm looking for the formula to do the conversion. Or at least something that 
gets me to this.

I'll keep looking for the solution, but I thought I'd ask.

--
Michael Cunningham

Other related posts: