How safe is it to assume that ROWID
is sequential or ascending when a table is only inserted to? and why?
I had a situation where I had to verify whether new records were added to table which has no sequence or date columns to use as reference. I found that ROWID
of a recently added record was higher than all the records in question. Therefore I assumed that they were older than the reference record. However looking around the net there seems to be some mixed information concerning ROWID
, some even claim that ROWID
is not even guaranteed to be constant!
I know that relying on the ROWID
for order is probably not a good idea, but that got me thinking : what are the guarantees provided concerning the order and variation of ROWID
values, both when DELETE
statements are used and when only inserting. Is there an official document by oracle detailing these points? Also, is ROWID
unique at table level, or database level?