Condividi tramite


Livelli di isolamento (OLE DB)

I client SQL Server possono controllare i livelli di isolamento delle transazioni per una connessione. Per controllare il livello di isolamento delle transazioni, il consumer del provider OLE DB di SQL Server Native Client utilizza gli elementi seguenti:

  • DBPROP_SESS_AUTOCOMMITISOLEVELS della proprietà DBPROPSET_SESSION per la modalità di autocommit predefinita del provider OLE DB di SQL Server Native Client.

    L'impostazione predefinita del provider OLE DB di SQL Server Native Client per il livello è DBPROPVAL_TI_READCOMMITTED.

  • Parametro isoLevel del metodo ITransactionLocal::StartTransaction per le transazioni locali di cui viene eseguito il commit manuale.

  • Parametro isoLevel del metodo ITransactionDispenser::BeginTransaction per le transazioni distribuite coordinate da MS DTC.

SQL Server consente accesso di sola lettura nel livello di isolamento di lettura dirty. Tutti gli altri livelli limitano la concorrenza applicando blocchi agli oggetti di SQL Server. Poiché il client richiede livelli di concorrenza maggiori, SQL Server applica restrizioni superiori all'accesso simultaneo ai dati. Per gestire il livello più elevato di accesso simultaneo ai dati, il consumer del provider OLE DB di SQL Server Native Client deve controllare in modo intelligenze le richieste per livelli di concorrenza specifici.

Nota

In SQL Server 2005 è stato introdotto il livello di isolamento dello snapshot. Per ulteriori informazioni, vedere Utilizzo dell'isolamento dello snapshot.