Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Mapping tablerow to datablock?

Re: Mapping tablerow to datablock?

From: Howard J. Rogers <hjr_at_dizwell.com>
Date: Wed, 24 Mar 2004 23:33:27 +1100
Message-ID: <4061801c$0$31907$afc38c87@news.optusnet.com.au>

"grz02" <grz01_at_spray.se> wrote in message news:1641ee43.0403240334.7f43dbd2_at_posting.google.com...
> Hi,
> Given a table-row in Oracle, is there any way to see in which
> datablock it is stored?
> Does the ROWID purvey this info, or any other way?
> Thanks,

Yes. The rowid contains the file number, the block number and the row position within the block. It might also contain the object number (ie, which segment owns it). The details are all stored in Base-64, with which you are no doubt completely fluent. No??! Surely not!! Well, in that case, check out dbms_rowid which provides some functions for converting Base-64 gibberish into plain old decimals. You can then match up, for example, the decimal file number with the contents of v$datafile.

Regards
HJR Received on Wed Mar 24 2004 - 06:33:27 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US