COMMINT 과 Rollback
1. Commit
- 모든 작업을 정상적으로 처리하겠다고 확정하는 명령어이다.
- 트랜잭션의 처리 과정을 데이터베이스에 반영하기 위해서, 변경된 내용을 모두 영구 저장한다.
- commit을 수행하면, 하나의 트랜젝션 과정을 종료하게 된다.
- transaction작업 내용을 실제 db에 저장
- 모든 사용자가 변경한 데이터의 결과를 볼 수 있다.
-- transaction 은 하나의 작업과정
2. Rollback

- 작업중 문제가 발생했을 때, 트랜젝션의 처리 과정에서 변경 사항을 취소하고, 트랜잭션 과정을 종료시킨다.
- 트랜젝션으로 인한 하나의 묶음 처리가 시작되기 이전의 상태로 되돌린다.
- 이전 commit 한 곳 까지만 복구한다.
- 트랜잭션 작업중에 하나라도 문제가 발생하면, 모든 작업을 취소해야 하기 때문에 하나의 논리적인 작업 단위로
구성해 놓아야 한다.
- 문제가 발생하면 논리적인 작업의 단위를 모두 취소해 버리면 되기 때문이다.
3. 명령어의 장점
- 데이터 무결성이 보장된다.
- 논리적으로 연관된 작업을 그룹화할 수 있다.
4. 자동 Rollback되는 경우
5. 자동 Commit되는 경우
- DDL문(Create, Alter, Drop, Truncate)
- DCL문(Grant, Revoke) 사용 권한
- Insert, Update, Delete 작업 후 commit 하지 않고 오라클을 정상종료시에
commit명령어 입력하지 않아도 정상 commit 후 오라클 종료