Уровни изоляции (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 появился уровень изоляции моментального снимка. Дополнительные сведения см. в разделе Работа с изоляцией моментального снимка.