ROLLBACK
ROLLBACK (ROLLBACK)
현재 진행 중인 트랜잭션을 중단(abort)하고, 그 트랜잭션이 만든 모든 변경 사항을 버리고 싶을 때 쓰는 명령이에요. 트랜잭션이 만든 업데이트를 원상복구하는 가장 확실한 방법이죠.
출처: PostgreSQL 문서
본문
개요 (Synopsis)
ROLLBACK [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]
설명 (Description)
ROLLBACK은 현재 트랜잭션을 롤백하고, 해당 트랜잭션이 만든 모든 업데이트를 폐기해요.
파라미터 (Parameters)
WORK,TRANSACTION— 선택적인 키워드로, 아무 효과가 없어요.AND CHAIN—AND CHAIN이 지정되면, 방금 끝난 트랜잭션과 같은 트랜잭션 특성(특성은 SET TRANSACTION 참고)을 가진 새 트랜잭션(중단되지 않은)이 즉시 시작돼요. 그렇지 않으면 새 트랜잭션은 시작되지 않아요.
참고 (Notes)
트랜잭션을 성공적으로 마치려면 COMMIT을 사용해요.
트랜잭션 블록 밖에서 ROLLBACK을 실행하면 경고가 나오고 그 외에는 아무 효과가 없어요. 트랜잭션 블록 밖에서 ROLLBACK AND CHAIN을 실행하면 오류가 나요.
예시 (Examples)
모든 변경 사항을 중단하려면:
ROLLBACK;
호환성 (Compatibility)
ROLLBACK 명령은 SQL 표준을 준수해요. ROLLBACK TRANSACTION 형태는 PostgreSQL 확장 기능이에요.