Usar Microsoft DTC (Coordinador de transacciones distribuidas) (ODBC)
Se aplica a: SQL Server Azure SQL Database Azure SQL Instancia administrada Azure Synapse Analytics Analytics Platform System (PDW)
Para actualizar dos o más instancias de SQL Server mediante MS DTC
Conéctese a MS DTC utilizando la función OLE DtcGetTransactionManager de MS DTC. Para obtener información acerca de MS DTC, vea Microsoft DTC (Coordinador de transacciones distribuidas).
Llame a SQL DriverConnect una vez para cada conexión de SQL Server que desee establecer.
Llame a la función OLE ITransactionDispenser::BeginTransaction de MS DTC para iniciar una transacción MS DTC y obtener un objeto Transaction que represente la transacción.
Llame a SQLSetConnectAttr una vez o más para cada conexión ODBC que quiera dar de alta en la transacción de MS DTC. Es preciso que el segundo parámetro de SQLSetConnectAttr sea SQL_ATTR_ENLIST_IN_DTC y que el tercer parámetro sea un objeto Transaction (obtenido en el paso 3).
Llame una vez a SQLExecDirect para cada servidor SQL Server que quiera actualizar.
Llame a la función OLE ITransaction::Commit de MS DTC para confirmar la transacción MS DTC. El objeto Transaction ya no es válido.
Para realizar una serie de transacciones MS DTC, repita los pasos del 3 al 6.
Para liberar la referencia al objeto Transaction, llame a la función OLE ITransaction::Return de MS DTC.
Para usar una conexión ODBC con una transacción MS DTC y, después, usar la misma conexión con una transacción local de SQL Server, llame a SQLSetConnectAttr con SQL_DTC_DONE.
Nota:
También puede llamar a SQLSetConnectAttr y SQLExecDirect sucesivamente para cada servidor SQL Server en lugar de llamarlos tal y como se sugería anteriormente en los pasos 4 y 5.