트랜잭션 : 작업 최소 수행 단위. 어떤 기능 한가지를 수행하는 sql덩어리
하나의 트랜잭션 내 여러 명령어를 한 번에 수행하여 작업을 완료하거나 아예 수행하지 않음.(모든 작업 취소)
중요한 이유
: 만약 a계좌에서 b계좌로 돈을 이체하는 경우 a계좌, b계좌 모두 잔액 업데이트가 필요하다.
그런데 a계좌 잔액 업데이트 후 문제가 생겨 b계좌에 업데이트가 되지 못해 데이터(돈)이 유실되면 절대안됨!
따라서 이 두 업데이트 문은 하나의 트랜잭션으로 묶여야함.
트랜잭션 명령어 TCL
ROLLBACK: 데이터 조작어 이후 작업 취소하고 싶을 때.
COMMIT : 트랜잭션 영원히 반영. ROLLBACK 소용 없음.