다음을 통해 공유


트랜잭션(Transact-SQL)

적용 대상:SQL 서버Azure SQL DatabaseAzure SQL Managed InstanceMicrosoft Fabric 의 웨어하우스Microsoft Fabric의 SQL 데이터베이스

트랜잭션은 작업의 한 단위입니다. 트랜잭션이 성공하면 트랜잭션 중에 수행된 모든 데이터 수정 내용이 커밋되고 데이터베이스의 영구 부분이 됩니다. 트랜잭션에 오류가 발생하여 취소하거나 롤백해야 하는 경우 모든 데이터 수정 사항이 지워집니다.

SQL Server는 다음 트랜잭션 모드에서 작동합니다.

트랜잭션 모드 Description
자동 커밋 트랜잭션 각 개별 문은 트랜잭션입니다.
명시적 트랜잭션 각 트랜잭션은 명시적으로 문으로 BEGIN TRANSACTION 시작되고 명시적으로 또는 COMMIT 문으로 ROLLBACK 종료됩니다.
암시적 트랜잭션 새 트랜잭션은 이전 트랜잭션이 완료될 때 암시적으로 시작되지만 각 트랜잭션은 명시적으로 또는 COMMIT 문으로 ROLLBACK 완료됩니다.
일괄 처리 범위 트랜잭션 MARS(Multiple Active Result Sets)에만 해당되며, MARS 세션에서 시작되는 Transact-SQL 명시적 또는 암시적 트랜잭션이 일괄 처리 범위 트랜잭션이 됩니다. 일괄 처리가 완료될 때 커밋되거나 롤백되지 않는 일괄 처리 범위 트랜잭션은 SQL Server에서 자동으로 롤백됩니다.

데이터 웨어하우스 제품과 관련된 특별한 고려 사항은 패브릭 데이터 웨어하우스 또는 트랜잭션의 트랜잭션(Azure Synapse Analytics)을 참조하세요.

트랜잭션 제어 구문

SQL Database 엔진은 다음 트랜잭션 문을 제공합니다.