Re: how to get all ROWIDs from a table (without selecting it)?
Date: Tue, 23 Dec 2008 08:55:20 +0100
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,