Re: Oracle Isolation Level and ADO
- From: Bill Karwin <bill@xxxxxxxxxx>
- Date: Sun, 24 Jul 2005 18:53:16 -0700
kenshiro2000@xxxxxxxxx wrote:
I have some COMs developed in Visual Basic. These COMs access to an Oracle DB with ADO. it isn't set the Isolation level of the transaction on the ADO Connection and i think that ADO use the default Level "Read Committed".
Yes, this is correct.
"If you do not use the IsolationLevel property of the ADO Connection object to specify an isolation level, the resource manager specifies the default isolation level, which is Read Committed for both SQL Server and Oracle."
http://support.microsoft.com/default.aspx?scid=kb;en-us;295570
Is the explicit LOCK useless in this code?
No, the lock is not useless -- in theory. READ COMMITTED allows the data to change during your transaction, and therefore if you execute your query twice, you might get different results. You want a more strict isolation level, but I would suggest using "SET TRANSACTION ISOLATION LEVEL SERIALIZABLE" instead of issuing explicit locking commands.
The REPEATABLE READ isolation level should work too, but Oracle does not support it, and automatically upgrades such transactions to SERIALIZABLE.
Read the following excellent article, it explains locks and isolation levels, with attention to differences between Oracle and other RDBMS implementations:
http://www.dbazine.com/db2/db2-disarticles/gulutzan6
What is the right Isolation Level?
I think that "Serializable" should be equvalent to the explicit LOCK on the tables.
SERIALIZABLE denies all operations on the data (read as well as write), so it is similar to EXCLUSIVE locking. But this is not exactly supported by Oracle, because Oracle implements only UPDATE locking, according to Gulutzan's article above.
Regards, Bill K. .
- Follow-Ups:
- Re: Oracle Isolation Level and ADO
- From: Jim Kennedy
- Re: Oracle Isolation Level and ADO
- References:
- Oracle Isolation Level and ADO
- From: kenshiro2000
- Oracle Isolation Level and ADO
- Prev by Date: Re: Oracle Isolation Level and ADO
- Next by Date: Re: Oracle Isolation Level and ADO
- Previous by thread: Re: Oracle Isolation Level and ADO
- Next by thread: Re: Oracle Isolation Level and ADO
- Index(es):
Relevant Pages
|