Dennis Cote wrote:
What happens to the ROWID when the transaction is rolled back? Is it
as if the record with that ROWID was deleted?
Yes
If I understand it correctly, connection C1 can do an INSERT, get
ROWID 4, C2 does an INSERT, gets 5, and commits, and then C1 commits,
with its 4; if C1 rolled back, there's no 4 in the database, just 5
and whatever else, correct?
No, this can't happen. As soon as C1 does its insert, it acquires an
exclusive lock on the database. C2 can't do an insert until C1 either
commits or rolls back and releases the lock. If C1 committed, then C2
will get 5, if C1 rolled back, then C2 will get 4.
All is clear now. Thank you :-).
- Michael
--
mouse, n: a device for pointing at the xterm in which you want to type.
-- Fortune
Visit me on the Web: http://www.elehack.net