문제
다음 DDL 명령어들 중에서 AUTO COMMIT이 발생하지 않는 경우는?
① Oracle에서 CREATE TABLE 실행 ② MySQL InnoDB에서 DROP INDEX 실행 ③ PostgreSQL에서 ALTER TABLE ADD COLUMN 실행 (트랜잭션 내부) ④ SQL Server에서 TRUNCATE TABLE 실행
정답
3번
해설
PostgreSQL은 DDL도 트랜잭션 내에서 롤백 가능한 특수한 DBMS입니다. Oracle, MySQL, SQL Server는 DDL 실행 시 자동으로 COMMIT이 발생하지만, PostgreSQL은 트랜잭션 내부에서 DDL을 실행해도 명시적 COMMIT 전까지는 롤백이 가능합니다. ①②④는 모두 AUTO COMMIT이 발생합니다.