CDatabase::BeginTrans

BOOL BeginTrans ( );

반환 값

호출이 성공적으로 되었고 변경 내용이 커밋되고만 수동으로; 아닌 그렇지 않으면 0。

주의

연결 된 데이터 소스와 거래를 시작 하려면이 멤버 함수를 호출 합니다. CRecordset 개체의 AddNew, 편집, 삭제Update 멤버 함수를 하나 이상의 호출 트랜잭션 구성 됩니다. 트랜잭션이 시작 하기 전에 CDatabase 개체가 있어야 합니다 이미에 연결 된 데이터 원본의 OpenEx 또는 Open 멤버 함수를 호출 하 여. 트랜잭션이 종료, 데이터 원본에 모든 변경 내용을 적용 (그리고 밖으로 수행) CommitTrans 를 호출 하거나 전체 트랜잭션을 중단 Rollback 을 호출 합니다. 전화 BeginTrans 모든 레코드 집합을 연 후 거래에 관여 하 고로 실제에 가까운 업데이트 작업 가능。

주의nbsp;??ODBC 드라이버에 따라 BeginTrans 를 호출 하기 전에 레코드 집합을 열 때 발생할 수 있습니다 문제를 Rollback을 호출 합니다. 사용 하는 특정 드라이버를 확인 해야 합니다. 예를 들어, Microsoft ODBC 데스크톱 드라이버 팩 3.0에 포함 된 Microsoft Access 드라이버를 사용 하는 경우 열린 커서 있는 모든 데이터베이스에 대해 트랜잭션을 시작 하지 해야 하는 Jet 데이터베이스 엔진의 요구 사항을 고려해 야 합니다. MFC 데이터베이스 클래스에서 열린 커서 열려 있는 CRecordset 개체를 의미합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 기술 참고 68(&N)。

BeginTrans 요청한 동시성 및 데이터 원본의 기능에 따라 서버에서 데이터 레코드를 잠글 수도 있습니다. 잠금 데이터에 대 한 자세한 문서를 참조 하십시오. 레코드 집합: 레코드 잠금 (ODBC) Visual c + + 프로그래머 가이드

문서에 사용자 정의 트랜잭션을 설명 Visual c + + 프로그래머 가이드 에서 트랜잭션 (ODBC)

BeginTrans 설정 상태는 일련의 트랜잭션 롤백할 수 있습니다 (반대). 롤백에 대 한 새로운 상태를 설정 하려면 모든 현재 트랜잭션이 커밋 다음 BeginTrans 를 다시 호출。

! 경고nbsp;CommitTrans 또는 Rollback 을 호출 하지 않고 BeginTrans 를 다시 호출 하는 것은 오류(&N)。

드라이버에 지정된 된 데이터베이스에 대 한 트랜잭션을 지원 하는지 확인 하려면 CanTransact 멤버 함수를 호출 합니다. 또한 커서 보존에 대 한 지원을 확인 하려면 GetCursorCommitBehaviorGetCursorRollbackBehavior 호출 해야。

트랜잭션에 대 한 자세한 내용은 다음 웹 사이트를 참조 하십시오. 문서 Visual c + + 프로그래머 가이드 에서 트랜잭션 (ODBC)

예제

문서를 참조 하십시오 트랜잭션: 트랜잭션에는 레코드 집합 (ODBC)을 수행 Visual c + + 프로그래머 가이드

CDatabase 개요 |nbsp; 클래스 멤버 (ko) | 계층 구조 차트(&N)

참고 항목nbsp;CDatabase::CommitTrans, CDatabase::Rollback, CRecordset::CanTransact(&N)

Index