더북(TheBook)

10.4.4 자동커밋 활성화 상태에서 수동으로 트랜잭션 처리하기

앞에서 설명했듯이 MySQL에서는 기본으로 자동커밋이 활성화되어 있습니다. 이 상태에서 실수로 데이터를 입력, 수정, 삭제하면 이전 상태로 되돌릴 방법이 없습니다. 그런데 자동커밋이 활성화된 상태에서 수동으로 트랜잭션 처리를 하는 방법이 있습니다. DML 문장에 대한 트랜잭션을 명시적으로 선언하면 됩니다. 어떻게 하는지 알아봅시다.

 

START TRANSACTION 문

먼저 자동커밋을 다시 활성화해서 기존과 뭐가 다른지 확인해 보겠습니다.

코드 10-35

-- autocommit 활성화
SET autocommit = 1;

-- 데이터 입력
INSERT INTO emp_tran1
SELECT *
  FROM emp_test;

-- 입력 취소 처리
ROLLBACK;

-- emp_tran1 조회
SELECT *
  FROM emp_tran1;
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.