INFORMAZIONI: Transazioni e livelli di isolamento in COM +

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

295570
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
Sommario
Quando un componente che è stato registrato con COM + si connette a un database, avvia una transazione con un livello di isolamento specifico. Una volta che una transazione è in corso, è possibile utilizzare il comando SET ISOLATION LEVEL SQL per modificare il livello di isolamento. SET ISOLATION LEVEL consente di modificare il livello di isolamento per la durata della transazione. Inoltre, alcuni gestori delle risorse, ad esempio Microsoft SQL Server consentono di utilizzare hint di ottimizzazione per modificare il livello di isolamento per la durata di una singola query. Un altro modo per utilizzare un livello di isolamento diverso consiste nell'utilizzare le transazioni nidificate, che consentono di specificare un livello di isolamento per la transazione più esterna con livelli di isolamento diverso per le transazioni interne. COM + non supporta la specifica i livelli di isolamento diverso per le transazioni nidificate.
Informazioni

Due tipi di transazioni in COM +

COM + utilizza di Microsoft Distributed Transaction Coordinator (MS DTC) per creare e gestire le transazioni distribuite per l'utente. Tuttavia, le transazioni locali sono create e gestite dal codice del componente che utilizza Microsoft ActiveX Data Objects (ADO) o Microsoft OLE DB.

Transazioni locale

Se si imposta l'attributo della transazione di un componente disattivato in COM + o Non supportato , è possibile utilizzare le transazioni locali con ADO utilizzando il BeginTrans , CommitTrans e AbortTrans metodi, come e a metodi simili di OLE DB. In questo scenario, COM + non ha effetto a livello di isolamento utilizzato per la transazione. Se non si utilizza la proprietà IsolationLevel dell'oggetto ADO Connection per specificare un livello di isolamento, il gestore delle risorse specifica il livello di isolamento predefinito, ovvero Lettura commit per SQL Server e Oracle. Se si imposta proprietà IsolationLevel dell'oggetto Connection , è necessario ricordare che il livello di isolamento iniziale della successiva transazione iniziare impostato.

Transazioni distribuite

Se si seleziona attributo della transazione del componente come richiesto , supportato o Richiede nuovo , COM + crea una transazione. Quando viene creata una transazione, COM + necessario specificare il livello di isolamento iniziale in cui da utilizzare per tale transazione. In COM + 1.0, il livello di isolamento di predefinito è SERIALIZABLE. In COM + 1.5, è possibile specificare il livello di isolamento predefinito. È possibile utilizzare i parametri di comando o query optimizer SET ISOLATION LEVEL SQL per aumentare o diminuire il livello di isolamento durante la transazione.

Se si imposta proprietà di IsolationLevel dell'oggetto ADO Connection per tentare di modificare il livello di isolamento, non verranno influenzati un componente in una transazione dichiarativa di COM + poiché questa impostazione interessa solo la transazione successiva iniziare.

Che consente di utilizzano le transazioni distribuite / Open XA protocollo per database, ad esempio Oracle o DB2 non consentono il livello di isolamento vengano propagate; di conseguenza, i gestori delle risorse XA per i fornitori diversi dettare il comportamento del livello di isolamento.
Riferimenti
Per ulteriori informazioni, vedere il seguente sito Web MSDN: Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
215520INFORMAZIONI: COM + e MTS sempre utilizzo SERIALIZABLE Transaction isolamento livello

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 295570 - Ultima revisione: 02/24/2014 12:46:11 - Revisione: 2.2

  • Microsoft COM+ 1.0
  • kbnosurvey kbarchive kbmt kbinfo KB295570 KbMtit
Feedback