IsolationLevel meaning

R

Ryan Liu

Hi,

I have a trivial question:
What does IsolationLevel mean?

e.g., in SDK:
ReadCommitted
Shared locks are held while the data is being read to avoid dirty reads, but
the data can be changed before the end of the transaction, resulting in
non-repeatable reads or phantom data.

What does this mean?

Who is reading? Who will read dirty data, who will have non-repeatable read?
The current connection/thread or other connectoins?

And locks shared by ...?

What IsolationLevel will block other thread from executing?

And by default, IsolationLevel is Unspecified when using
conn.BeginTransaction()?
Thanks a lot!
R L
 
M

Marc Gravell

What does this mean?
Generally ? Trouble ;-p
Who is reading? Who will read dirty data, who will have non-repeatable read?
The current connection/thread or other connectoins?
Other connections. The current connection can read its own changes
without issue.
What IsolationLevel will block other thread from executing?
"serializable" is the most paranoid isolation level; it will routinely
cause statements to queue, *but* helps preserve integrity. As such, it
is the default level for DTC/LTM/TransactionScope usage.

Marc
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top