ADO.NET FAQ : Which are the different Transaction Isolation Levels?
Following are the various IsolationLevels:
Serialized : Data read by a current transaction cannot be
changed by another transaction until the current transaction finishes. No new
data can be inserted that would affect the current transaction. This is the
safest isolation level and is the default.
Repeatable Read : Data read by a current transaction cannot
be changed by another transaction until the current transaction finishes. Any
type of new data can be inserted during a transaction.
Read Committed : A transaction cannot read
data that is being modified by another transaction that has not committed. This
is the default isolation level in Microsoft SQL Server.
Read Uncommitted : A transaction can read any data, even if
it is being modified by another transaction. This is the least safe isolation
level but allows the highest concurrency.
Any : Any isolation level is supported. This setting is most
commonly used by downstream components to avoid conflicts. This setting is
useful because any downstream component must be configured with an isolation
level that is equal to or less than the isolation level of its immediate
upstream component. Therefore, a downstream component that has its isolation
level configured as Any always uses the same isolation level that its immediate
upstream component uses. If the root object in a transaction has its isolation
level configured to Any, its isolation level becomes Serialized.