다음을 통해 공유


API 암시적 트랜잭션

암시적 트랜잭션은 OLE DB와 ODBC API(응용 프로그램 프로그래밍 인터페이스)의 기능을 사용하여 지정할 수 있습니다.

OLE DB

OLE DB에서는 암시적 트랜잭션 모드를 설정할 수 있는 방법이 없습니다.

  • ITransactionLocal::StartTransaction 메서드를 호출하여 명시적 트랜잭션을 시작합니다.
  • 그런 다음 ITransaction::Commit 또는 ITransaction::Abort 메서드의 fRetaining을 TRUE로 설정하여 호출하면 OLE DB가 현재 트랜잭션을 완료하고 암시적 트랜잭션 모드로 설정됩니다. ITransaction::Commit 또는 ITransaction::AbortfRetaining을 TRUE로 설정한 동안에는 암시적 트랜잭션 모드가 유지됩니다.
  • ITransaction::Commit 또는 ITransaction::Abort에서 fRetaining을 FALSE로 설정하여 호출하면 암시적 트랜잭션 모드가 중지됩니다.

ODBC

  • SQLSetConnectAttr 함수의 Attribute를 SQL_ATTR_AUTOCOMMIT으로 설정하고 ValuePtr를 SQL_AUTOCOMMIT_OFF로 설정하여 호출하면 암시적 트랜잭션 모드가 시작됩니다.
  • SQLSetConnectAttrAttribute를 SQL_ATTR_AUTOCOMMIT으로 설정하고 ValuePtr를 SQL_AUTOCOMMIT_ON으로 설정하여 호출할 때까지 암시적 트랜잭션 모드는 계속 유지됩니다.
  • SQLEndTran 함수의 CompletionType을 SQL_COMMIT 또는 SQL_ROLLBACK으로 설정하여 호출하면 각 트랜잭션을 커밋 또는 롤백합니다.
  • ODBC 응용 프로그램이 SQL_AUTOCOMMIT_OFF를 설정하면 SQL Server ODBC 드라이버가 SET IMPLICIT_TRANSACTION ON 문을 실행합니다.

ADO

ADO는 암시적 트랜잭션을 지원하지 않습니다. ADO 응용 프로그램은 자동 커밋 모드나 명시적 트랜잭션 모드를 사용합니다.

참고 항목

관련 자료

Transactions
Performing Transactions (ODBC)

도움말 및 정보

SQL Server 2005 지원 받기