Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
IsolationLevel Enumeration
Collapse the table of content
Expand the table of content

IsolationLevel Enumeration

Specifies the transaction locking behavior for the connection.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

public enum IsolationLevel

Member nameDescription
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkUnspecifiedA different isolation level than the one specified is being used, but the level cannot be determined.

When using OdbcTransaction, if you do not set IsolationLevel or you set IsolationLevel to Unspecified, the transaction executes according to the isolation level that is determined by the driver that is being used.

Supported by the .NET Compact FrameworkSupported by the XNA FrameworkChaosThe pending changes from more highly isolated transactions cannot be overwritten.
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkReadUncommittedA dirty read is possible, meaning that no shared locks are issued and no exclusive locks are honored.
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkReadCommittedShared 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.
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkRepeatableReadLocks are placed on all data that is used in a query, preventing other users from updating the data. Prevents non-repeatable reads but phantom rows are still possible.
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkSerializableA range lock is placed on the DataSet, preventing other users from updating or inserting rows into the dataset until the transaction is complete.
Supported by the .NET Compact FrameworkSupported by the XNA FrameworkSnapshotReduces blocking by storing a version of data that one application can read while another is modifying the same data. Indicates that from one transaction you cannot see changes made in other transactions, even if you requery.

The IsolationLevel values are used by a .NET Framework data provider when performing a transaction.

The IsolationLevel remains in effect until explicitly changed, but it can be changed at any time. The new value is used at execution time, not parse time. If changed during a transaction, the expected behavior of the server is to apply the new locking level to all statements remaining.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

© 2015 Microsoft