Share via


Cómo usar Microsoft DTC (Coordinador de transacciones distribuidas) (ODBC)

Para actualizar dos o más servidores SQL Server mediante MS DTC

  1. 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).

  2. Llame a SQLDriverConnect una vez para cada conexión que desee establecer a Microsoft® SQL Server™.

  3. 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.

  4. Llame una o varias veces a SQLSetConnectAttr para cada conexión ODBC que desee dar de alta en la transacción MS DTC. El segundo parámetro de SQLSetConnectAttr debe ser SQL_ATTR_ENLIST_IN_DTC y el tercer parámetro debe ser el objeto Transaction obtenido en el paso 3.

  5. Llame una vez a SQLExecDirect para cada servidor SQL Server que desee actualizar.

  6. 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, a continuación, 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.

Vea también

Conceptos