개인공부

COMMIT와 ROLLBACK 본문

데이터베이스

COMMIT와 ROLLBACK

풀스택개발 2018. 4. 22. 19:34

트랜잭션이란 ? 


- 데이터베이스에서 트랜잭션(Transaction)데이터 처리의 한 단위입니다.


- 오라클에서 발생하는 여러 개의 SQL 명령문들을 하나의 논리적인 작업 단위로 처리하는데 이를 트랜잭션이라고 합니다.


- 트랜잭션은 마지막으로 실행한 커밋(혹은 롤백) 명령 이후부터 새로운 커밋(혹은 롤백) 명령을 실행하는 시점까지 수행된 모든 DML 명령들을 의미합니다.




COMMIT


 아래 그림에서 UPDATE 문으로 데이터를 갱신하고(③), DELETE 문으로 데이터를 삭제하고(④), INSERT 문을 사용해 데이터를 삽입(⑤)합니다.


 만약 이 모든 과정이 오류 없이 수행되었다면 지금까지 실행한 모든 작업(③, ④, ⑤)"데이터베이스에 영구 저장하라"는 명령으로 커밋을 수행합니다.



ROLLBACK
 롤백 명령은 마지막으로 수행한 커밋 명령까지만 정상 처리(①, ②)된 상태로 유지하고 그 이후에 수행했던 모든 DML 명령어 작업(③, ④, ⑤)들을 취소시켜 이전 상태로 원상 복귀시킵니다.



자동커밋
DDL 문에는 CREATE, ALTER, DROP, RENAME, TRUNCATE 등이 있습니다.
이러한 DDL문은 자동으로 커밋(AUTO COMMIT)이 발생됩니다.





Comments