Re: how to get all ROWIDs from a table (without selecting it)?
Date: Tue, 23 Dec 2008 08:55:20 +0100
Message-ID: <cd8f74560812222355s137f25ffs6461af2ab0633775@mail.gmail.com>
Jared,
You can certainly generate possible ROWID values for a table, but how will
> you know
> if there is actually a row in the block for the ROWID unless you do a
> select on the table?
>
that was exactly my question. ;-)
In the meantime I accepted there will be no information stored within the
SGA about the different available row-numbers of a given block.
Based on the fact the smallest ganularity a RDBMS reads is a Block, I cannot
imagine any subsystem which would benefit from holding row-information
available; so it makes sense NOT to cache it anywhere.
Apart from dumping the block and examining the row directory in the header
> that is.
> If you want to do that, I think it's been documented a few times, and
> google should
> find it. I can't recall the details of doing so.
>
I did this for some dedicated blocks to lern more about it's structure (and ROWIDs), but this is not useful for a generic 'load any block into buffer_cache'. For this purpose it's also not needed, as we are talking about blocks again (in buffer_cache) and not rows.
thank you for your answers and effort,
Martin
-- http://www.freelists.org/webpage/oracle-lReceived on Tue Dec 23 2008 - 01:55:20 CST