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


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

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

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

    Значение по умолчанию для уровня для поставщика OLE DB и драйвер ODBC для собственного клиента 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 появился уровень изоляции моментального снимка. Дополнительные сведения см. в разделе Работа с изоляцией моментального снимка.

См. также

Основные понятия

Transactions