value from index block or table block

From: Grzegorz Goryszewski <grzegorzof_at_interia.pl>
Date: Wed, 23 Nov 2011 16:56:36 +0100
Message-ID: <4ECD17B4.8020700_at_interia.pl>



Hi,
I know that seems crazy but please clarify that for me ,let say for 10.2.0.3 but that does not matter .

Let say we got table t with col1, col2, col3 and index on that table on col1, col2 and
query

select col1,col2,col3 from t where col1 = 'value' ; Let say that
TABLE ACCESS BY INDEX ROWID was used for that query

My question from where Oracle retrieves col1,col2 values ? From index block and then col3 value from table block via rowid found in index block ?
Or maybe only rowid from index and then col1,col2,col3 values from table block only ?

I'm asking because wonder if its possible to get different values if access plan is full table scan .
Suppose You've got 'corrupted' index block (or rather changed by block editor) with different value than in table block for some column value . So it is possible to get different values if access path differs ? Regards
GregG

--
http://www.freelists.org/webpage/oracle-l
Received on Wed Nov 23 2011 - 09:56:36 CST

Original text of this message