Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Will ROWID change during DB Runing??

Re: Will ROWID change during DB Runing??

From: Malcolm Dew-Jones <yf110_at_vtn1.victoria.tc.ca>
Date: 31 Dec 2004 11:40:00 -0800
Message-ID: <41d5ab10@news.victoria.tc.ca>


DA Morgan (damorgan_at_x.washington.edu) wrote: : nntp.lucent.com wrote:

: > Hi,
: >
: > Does anyone know that whether the rowid will change for one record during
: > ORACLE runing?
: >
: > From the below link
: > http://www.adp-gmbh.ch/ora/concepts/rowid.html
: > I found such words:
: > Although a rowid uniquely identifies a row in a table, it might change its
: > value if the underlying table is an index organized table or a partitioned
: > table.
: >
: > Thanks in advance!
: > Best Regards,
: > Grant

: ROWID can change and should not be used to identify a row unless that : row has been locked: SELECT ... FOR UPDATE.

I am familiar with UPDATE ... WHERE CURRENT OF .... , I assume it uses implicitly uses the rowid of the most recently fetched row since the docs I have read suggest it is the most efficient way to do this (in addition to preventing other changes on the row).

Can the UPDATE also refer to previously fetched rows based on their rowids? (Assuming your codes saves them during the fetch). Some of the Ask Top stuff suggests to me that all the rows potentially returned by the query are effectively locked, though I am not clear on this at all.

--

This space not for rent.
Received on Fri Dec 31 2004 - 13:40:00 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US