Re: changing ROWID

From: DavidJRoth <davidjroth_at_aol.com>
Date: 16 Jan 1995 20:49:55 -0500
Message-ID: <3ff7o3$crg_at_newsbf02.news.aol.com>


>From: danielkm_at_aol.com (Daniel K M)
>Date: 16 Jan 1995 13:08:14 -0500
>Message-ID: <3fecme$5o9_at_newsbf02.news.aol.com>
 

>Since it appears that the weight of opinion has begun to be apparent for
>this thread,
>I'd like to try to summarize things to see if I understand the situation.

...more...

Excellant summary!

A couple of additions/one correction.

Chaining:
In general, the ROWID gives the physical location of a row. There are 2 situations where this may not be completly true. Both situations were simply called "chaining" through V6. The term chaining is now used to refer to the case where a row is too long to fit in one block as is the case with long datatypes. The term migration is used for the case where the row has been moved from one block to another because there wasn't enough room to accomidate an update.

Shared ROWID's
NO! It is not possible for rows in two different tables to share the same ROWID. All ROWID's in a database are unique.

Select for update
Select for update causes a row level lock to be placed. Indiscrimanent use will cause dead locks and all kinds of other problems.

Database re-orgs, etc.
Of all of the actions that can change a row id, only a delete and insert within the same transaction can cause a problem. Users are protected from all other action types by Oracle's read consistency. Received on Tue Jan 17 1995 - 02:49:55 CET

Original text of this message