트랜잭션(transaction)은 뭘까?

사용자 A가 사용자 B에게 만원을 송금한다.

  1. 사용자 A의 계좌에서 만원을 차감한다: UPDATE를 통해 사용자 A의 잔고 변경
  2. 사용자 B의 계좌에 만원을 추가한다: UPDATE를 통해 사용자 B의 잔고 변경

작업단위는 출금 UPDATE+입금 UPATE
-> 요거를 통틀어 하나의 트랜잭션이라고 하고, 두 쿼리문이 모두 성공적으로 완료되어야만 하나의 작업완료라고 함

만약에 첫번째 쿼리만 수행되고 두번째 쿼리는 수행되지 않으면, A의 통장잔고에서 만원만 차감된거고, B의 통장잔고에는 만원이 들어오지 않게 됨!

따라서, DB가 제공하는 트랜잭션 기능을 사용하여 commit, rollback으로 정상적인 작업이 가능하도록 제어 할 수 있음.

트랜잭션의 특징

트랜잭션 Commit & Rollback 연산

DB 세션