Microsoft Distributed Transaction Coordinator 사용(ODBC)

적용 대상: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

MS DTC를 사용하여 둘 이상의 SQL Server 인스턴스를 업데이트하려면

  1. MS DTC OLE DtcGetTransactionManager 함수를 사용하여 MS DTC에 연결합니다. MS DTC에 대한 자세한 내용은 Microsoft Distributed Transaction Coordinator를 참조하세요.

  2. 설정하려는 각 SQL Server 연결에 대해 SQL DriverConnect를 한 번 호출합니다.

  3. MS DTC OLE ITransactionDispenser::BeginTransaction 함수를 호출하여 MS DTC 트랜잭션을 시작하고 해당 트랜잭션을 나타내는 트랜잭션 개체를 가져옵니다.

  4. MS DTC 트랜잭션에 참여하려는 각 ODBC 연결에 대해 SQLSetConnectAttr를 한 번 이상 호출합니다. SQLSetConnectAttr 두 번째 매개 변수는 SQL_ATTR_ENLIST_IN_DTC, 세 번째 매개 변수는 Transaction 개체(3단계에서 가져온)여야 합니다.

  5. 업데이트하려는 각 SQL Server에 대해 SQLExecDirect를 한 번 호출합니다.

  6. MS DTC OLE ITransaction::Commit 함수를 호출하여 MS DTC 트랜잭션을 커밋합니다. Transaction 개체가 더 이상 유효하지 않습니다.

일련의 MS DTC 트랜잭션을 수행하려면 3~6단계를 반복합니다.

트랜잭션 개체에 대한 참조를 해제하려면 MS DTC OLE ITransaction::Return 함수를 호출합니다.

MS DTC 트랜잭션과 ODBC 연결을 사용한 다음 로컬 SQL Server 트랜잭션과 동일한 연결을 사용하려면 SQL_DTC_DONE SQLSetConnectAttr를 호출합니다.

참고 항목

트랜잭션 수행(ODBC)