컴퓨터 과학에서 트랜잭션은 '더이상 분할하지 못하는 업무 처리의 단위'를 뜻한다.
예를 들어 입금과 출금을 동시에 진행하게 된다면, 둘 중 한 업무만이 실행되고 다른 한 업무는 처리하지 못하게해야 혼선이 생기지않는다.
데이터베이스에서 트랜잭션은 데이터베이스의 상태를 바꾸는 작업의 단위이다.
즉
SELECT
INSERT
DELETE
UPDATE
등 SQL 명령문으로 데이터의 상태를 바꿀 때 마다 내부적으로 commit하여 데이터베이스에 반영한다.
Commit : 변경한 데이터의 상태를 데이터베이스에 영구적으로 반영시킨다.
커밋하면 하나의 트랜잭션 과정을 종료한다.
Rollback : 발생한 변경사항을 취소한다. 말인 즉슨 데이터의 상태를 마지막 commit의 상태로 원상복구한다.