MSSQLSERVER_8525MSSQLSERVER_8525

In questo argomento si applica a: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

DettagliDetails

Nome prodottoProduct Name SQL ServerSQL Server
ID eventoEvent ID 85258525
Origine eventoEvent Source MSSQLSERVERMSSQLSERVER
ComponenteComponent SQLEngineSQLEngine
Nome simbolicoSymbolic Name
Testo del messaggioMessage Text La transazione distribuita è stata completata.Distributed transaction completed. Integrare questa sessione in una nuova transazione o nella transazione NULL.Either enlist this session in a new transaction or the NULL transaction.

SpiegazioneExplanation

Il modello di programmazione per l'uso di Distributed Transaction Coordinator con SQL ServerSQL Server richiede alle applicazioni l'integrazione esplicita in una transazione distribuita o l'esclusione esplicita da essa.The programming model for using the Distributed Transaction Coordinator with SQL ServerSQL Server requires applications to explicitly enlist to and defect from a distributed transaction.

Questo errore si verifica quando vengono soddisfatte le quattro condizioni seguenti:This error occurs when the following four conditions are met:

  • L'applicazione è stata integrata in una transazione distribuita.The application has enlisted into a distributed transaction.

  • La transazione di cui è stato eseguito il commit o il rollback, è stata interrotta per un motivo qualsiasi.The transaction has ended, either committed or rolled back, for any reason.

  • L'applicazione utente non è stata esclusa in modo esplicito da una transazione distribuita o integrata in modo esplicito in una nuova transazione distribuita.The user application has not explicitly defected from a distributed transaction or explicitly enlisted into a new distributed transaction.

  • L'applicazione tenta di eseguire qualsiasi operazione transazionale, ad eccezione dell'esclusione da una transazione distribuita esistente o dell'integrazione in una nuova transazione distribuita, ad esempio l'esecuzione di una query o l'avvio di una transazione locale.The application tries to do any transactional operation other than defecting from existing distributed transaction or enlisting to a new distributed transaction, such as issuing a query or starting a local transaction.

Lo stato di errore 1 viene utilizzato quando l'applicazione esegue un'operazione che consente di creare transazioni locali. Lo stato 2 viene utilizzato quando l'applicazione tenta l'integrazione in una sessione associata.Error state 1 is used when the application performs an operation that creates local transactions, and state 2 is used when application tries to enlist to a bound session.

Azione dell'utenteUser Action

Dopo l'integrazione in una transazione distribuita, l'applicazione deve essere esclusa in modo esplicito dalla transazione distribuita o integrata in un'altra transazione distribuita.After an application has enlisted into a distributed transaction, the application must explicitly defect from the distributed transaction or enlist to another distributed transaction. Ciò determina l'esclusione implicita da una transazione inclusa in precedenza.This will implicitly defect from a previous enlisted transaction. Per informazioni sulla sintassi esatta da utilizzare per l'esclusione da una transazione distribuita o l'inclusione in essa, vedere il manuale dell'interfaccia di programmazione per l'applicazione.For the exact syntax to defect from or enlist to a distributed transaction, see the programming interface manual for the application.