트랜잭션은 여러개의 작업을 하나로 묶은 실행 유닛입니다.
(MySQL에서는 입력하는 모든 쿼리 명령어들을 각각 하나의 트랜잭션이라고 할 수 있습니다.)
트랜잭션의 성질을 나타내는 4가지 기본 원칙입니다:
API의 요청을 통해 여러개의 삽입, 업데이트, 삭제 쿼리가 실행되어야 할 경우 트랜잭션 처리를 해준다면 요청 중 오류가 발생할 경우 rollback을 하여 요청이 실행되기 전 상태로 돌립니다. 정상적으로 처리가 이루어지는 경우 commit을 하여 서버에 변경된 데이터를 반영할 수 있게 됩니다.
모든 작업들을 정상 처리하겠다고 확정하는 명령어로서, 해당 처리 과정을 DB에 영구 저장하겠다는 의미입니다. Commit을 수행하면 하나의 트랜잭션 과정이 종료되는 것입니다. Commit을 수행하면 이전 데이터가 완전히 반영되어 UPDATE됩니다.
작업 중 문제가 발생되어 트랜잭션의 처리 과정에서 발생한 변경사항을 취소하는 명령어입니다. 해당 명령을 트랜잭션에게 하달하면, 트랜잭션은 시작되기 이전의 상태로 되돌아갑니다. 이것은 마지막 Commit을 완료한 시점으로 돌아간다는 말과 상통합니다. 즉, Rollback은 Commit하여 저장한 예전 상태를 복구하는 것입니다.