Share via


암시적 트랜잭션

연결이 암시적 트랜잭션 모드에서 작동할 때는 현재 트랜잭션이 커밋 또는 롤백된 후 SQL Server 데이터베이스 엔진 인스턴스에서 자동으로 새 트랜잭션을 시작합니다. 트랜잭션 시작을 직접 지정할 필요 없이 각 트랜잭션을 커밋 또는 롤백하기만 하면 됩니다. 암시적 트랜잭션 모드는 트랜잭션의 연속 체인을 생성합니다.

연결에 대해 암시적 트랜잭션 모드를 설정하고 나면 이러한 문을 처음 실행할 때 데이터베이스 엔진 인스턴스가 자동으로 트랜잭션을 시작합니다.

ALTER TABLE

INSERT

CREATE

OPEN

DELETE

REVOKE

DROP

SELECT

FETCH

TRUNCATE TABLE

GRANT

UPDATE

COMMIT 또는 ROLLBACK 문을 실행한 후에도 트랜잭션은 계속 적용됩니다. 첫 번째 트랜잭션이 커밋 또는 롤백되면 나중에 연결에 의해 이러한 문이 실행될 때 데이터베이스 엔진 인스턴스에서 자동으로 새 트랜잭션을 시작합니다. 이 인스턴스는 암시적 트랜잭션 모드가 해제될 때까지 암시적 트랜잭션 체인을 계속 생성합니다.

암시적 트랜잭션 모드는 Transact-SQL SET 문을 사용하거나 데이터베이스 API 함수 및 메서드를 사용하여 설정됩니다.

[!참고] MARS(Multiple Active Result Set) 세션에서는 Transact-SQL 암시적 트랜잭션이 일괄 처리 범위의 트랜잭션이 됩니다. 일괄 처리가 완료될 때 일괄 처리 범위의 트랜잭션이 커밋되거나 롤백되지 않으면 SQL Server 에서 해당 트랜잭션을 자동으로 롤백합니다. 자세한 내용은 트랜잭션 제어(데이터베이스 엔진)트랜잭션(Transact-SQL)을 참조하십시오.

참고 항목

개념

Transact-SQL 암시적 트랜잭션
API 암시적 트랜잭션

도움말 및 정보

SQL Server 2005 지원 받기