Поделиться через


Уровни изоляции (OLE DB)

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

Скачать драйвер OLE DB

Клиенты SQL Server могут управлять уровнями изоляции транзакций для подключения. Для управления уровнем изоляции транзакций пользователю OLE DB Driver for SQL Server предоставлены следующие возможности.

  • Свойство DBPROP_SESS_AUTOCOMMITISOLEVELS объекта DBPROPSET_SESSION для используемого по умолчанию режима автоматической фиксации драйвера OLE DB для SQL Server.

    По умолчанию для уровня изоляции в OLE DB Driver for SQL Server устанавливается значение DBPROPVAL_TI_READCOMMITTED.

  • Параметр isoLevel метода ITransactionLocal::StartTransaction для локальных транзакций с ручной фиксацией.

  • Параметр isoLevel метода ITransactionDispenser::BeginTransaction для распределенных транзакций с координацией MS DTC.

SQL Server разрешает доступ только для чтения на уровне изоляции грязного чтения. Все остальные уровни ограничивают параллелизм путем применения блокировок к объектам SQL Server. Так как клиенту требуется более широкий уровень параллелизма, SQL Server применяет более большие ограничения на одновременный доступ к данным. Чтобы обеспечить самый высокий уровень параллельного доступа к данным, драйвер OLE DB для SQL Server должен интеллектуально управлять запросами для конкретных уровней параллелизма.

Примечание.

SQL Server 2005 (9.x) представил уровень изоляции моментальных снимков. Дополнительные сведения см. в разделе Working with Snapshot Isolation.

См. также

Транзакции