Cursor Transaction Isolation Level


System_CAPS_ICON_warning.jpg Warning

SQL Server Native Client (SNAC) is not supported beyond SQL Server 2012. Avoid using SNAC in new development work, and plan to modify applications that currently use it. The Microsoft ODBC Driver for SQL Server provides native connectivity from Windows to Microsoft SQL Server and Microsoft Azure SQL Database.

The complete locking behavior of cursors is based on an interaction between concurrency attributes and the transaction isolation level set by the client. ODBC clients set the transaction isolation level using the SQLSetConnectAttr SQL_ATTR_TXN_ISOLATION or SQL_COPT_SS_TXN_ISOLATION attributes. The locking behavior of a specific cursor environment is determined by combining the locking behaviors of the concurrency and transaction isolation level options.

The following cursor transaction isolation levels are supported by the SQL Server Native Client ODBC driver:

  • Read committed (SQL_TXN_READ_COMMITTED)

  • Read uncommitted (SQL_TXN_READ_UNCOMMITTED)

  • Repeatable read (SQL_TXN_REPEATABLE_READ)

  • Serializable (SQL_TXN_SERIALIZABLE)

  • Snapshot (SQL_TXN_SS_SNAPSHOT)

Note that the ODBC API specifies additional transaction isolation levels, but these are not supported by SQL Server or the SQL Server Native Client ODBC driver.

Cursor Properties

Community Additions