In Oracle, the fastest way to access a row is to use a feature called a Rowid. This is an internal identifier that can be thought of as a pseudo-column. It never actually appears as a column if you perform a describe on a table or if you query the "column" catalog table all_tab_columns. Despite this, you can retrieve the Rowid when selecting a row from a table. Here is an example:
Select column1, column2, rowid
from table_name
where table_key = id1;
The Rowid that is returned above can later be reused to select, update, or delete that same row. It is a direct pointer to a given row in a block and a file for an object.