10.4.3 자동커밋 비활성화 상태에서 트랜잭션 처리하기
자동커밋을 비활성화한 상태에서 트랜잭션 처리하는 방법을 알아보겠습니다. 먼저 트랜잭션 처리가 됐는지 확인하기 위한 샘플 테이블을 만듭니다.
코드 10-32
CREATE TABLE emp_tran1 AS
SELECT *
FROM emp_test;
ALTER TABLE emp_tran1
ADD CONSTRAINT PRIMARY KEY (emp_no);
CREATE TABLE emp_tran2 AS
SELECT *
FROM emp_test;
ALTER TABLE emp_tran2
ADD CONSTRAINT PRIMARY KEY (emp_no);
실행결과
emp_test 테이블을 복제해 emp_tran1, emp_tran2 테이블을 생성했습니다. CREATE TABLE AS 구문을 사용하면 데이터까지 복제할 수 있는데, 자동커밋이 비활성화 상태더라도 이 문장은 DDL에 속해서 COMMIT이나 ROLLBACK 문을 사용할 필요가 없습니다. 트랜잭션 처리는 DML인 INSERT, UPDATE, DELETE 문에만 적용됩니다.