Níveis de Isolamento (Fornecedor Nativo de Cliente OLE DB)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse Analytics

Os clientes SQL Server podem controlar os níveis de isolamento de transações para uma ligação. Para controlar o nível de isolamento de transações, o consumidor do fornecedor de OLE DB do SQL Server Native Client utiliza:

  • DBPROPSET_SESSION propriedade DBPROP_SESS_AUTOCOMMITISOLEVELS para o SQL Server modo de autocommit padrão do fornecedor OLE DB Native Client.

    O fornecedor SQL Server Native Client OLE DB para o nível é DBPROPVAL_TI_READCOMMITTED.

  • O parâmetro isoLevel do método ITransactionLocal::StartTransaction para transações locais de commit manual.

  • O parâmetro isoLevel do método ITransactionDispenser::BeginTransaction para transações distribuídas coordenadas pelo MS DTC.

O SQL Server permite acesso apenas de leitura ao nível de isolamento de leitura suja. Todos os outros níveis restringem a concorrência aplicando bloqueios a objetos SQL Server. Como o cliente requer níveis de concorrência mais elevados, o SQL Server aplica restrições mais rigorosas ao acesso concorrente aos dados. Para manter o mais alto nível de acesso concorrente aos dados, o consumidor fornecedor de OLE DB do SQL Server Native Client deve controlar inteligentemente os seus pedidos para níveis específicos de concorrência.

Note

O SQL Server 2005 (9.x) introduziu o nível de isolamento de snapshots. Para mais informações, consulte Trabalhar com Isolamento de Instantâneos.