Skip to content

Latest commit

 

History

History
42 lines (30 loc) · 2.38 KB

File metadata and controls

42 lines (30 loc) · 2.38 KB
title Isolation levels (OLE DB driver)
description Learn how an OLE DB Driver for SQL Server consumer can control the transaction-isolation level for a connection.
author David-Engel
ms.author davidengel
ms.date 06/14/2018
ms.service sql
ms.subservice connectivity
ms.topic reference
ms.custom
ignite-2025
helpviewer_keywords
OLE DB, transactions
isolation levels [OLE DB]
transactions [OLE DB]
OLE DB Driver for SQL Server, transactions

Isolation Levels (OLE DB)

[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics PDW FabricSQLDB]

[!INCLUDEDriver_OLEDB_Download]

[!INCLUDEssNoVersion] clients can control transaction-isolation levels for a connection. To control transaction-isolation level, the OLE DB Driver for SQL Server consumer uses:

  • DBPROPSET_SESSION property DBPROP_SESS_AUTOCOMMITISOLEVELS for the OLE DB Driver for SQL Server default autocommit mode.

    The OLE DB Driver for SQL Server default for the level is DBPROPVAL_TI_READCOMMITTED.

  • The isoLevel parameter of the ITransactionLocal::StartTransaction method for local manual-commit transactions.

  • The isoLevel parameter of the ITransactionDispenser::BeginTransaction method for MS DTC-coordinated distributed transactions.

[!INCLUDEssNoVersion] allows read-only access at the dirty read isolation level. All other levels restrict concurrency by applying locks to [!INCLUDEssNoVersion] objects. As the client requires greater concurrency levels, [!INCLUDEssNoVersion] applies greater restrictions on concurrent access to data. To maintain the highest level of concurrent access to data, the OLE DB Driver for SQL Server consumer should intelligently control its requests for specific concurrency levels.

Note

[!INCLUDEssVersion2005] introduced snapshot isolation level. For more information, see Working with Snapshot Isolation.

See Also

Transactions