Quick experiment: As mentioned in a previous post, the an Oracle Physical ROWID is 18 bytes laid out in the following manner:
- Letters 1-6 = the OBJECT_ID
- Letters 7-9 = the relative FILE_ID
- Letters 10-15 = the BLOCK within the file
- Letters 16-18 = the ROW within the block
But! There are TWO different object ID’s associated with a table…one for the table itself, another for the table segment ( select object_id, data_object_id from dba_objects ).
So which one does a ROWID point to?