위키백과에 따르면 변경된 상황을 확정짓고 사용자들에게 보여주는 일로 정의 되어있다.
1. COMMIT
사용자가 INSERT, UPDATE, DELETE를 순서대로 실행했을 때,
데이터베이스에 바로 적용이 되는 것이 아니라,
COMMIT명령을 실행을 해야만 적용이 완료되면서 사용자들에게 제공.
2. ROLLBACK
COMMIT하기 전 ROOLBACK 명령어를 사용하게 되면,
COMMIT전 작업을 취소되며 이전 데이터는 다시 재저장.
3. SAVEPOINT
SAVEPOINT하기 일부 데이터만 ROLLBACK 가능.
같은 이름으로 SAVEPOINT를 걸었을 때 뒤에 건 SAVEPOINT만 유효
BEGIN TRY
BEGIN TRAN
BEGIN
//UPDATE, INSERT, DELETE 구문
END
COMMIT TRAN
END TRY
BEGIN CATCH
IF (XACT_STATE() <> 0) ROLLBACK TRAN;
END CATCH
결론
AUTO COMMIT를 해제 시키거나,
BEGIN TRAN 구문을 사용하여 데이터 유실 위험을 최소화 하자 !!!!!!!!