트랜잭션이란 데이터베이스의 상태를 변화시키기 위해 수행하는 작업의 단위
라고는 하는데 도대체 이게 뭔 댕소리? 라는 생각에 열심히 구글링을 했다
고로 간단하게 정리하자면
질의어(SELECT * FROM 테이블 등..)을 이용하여 데이터베이스에 접근하는 것
라고 들으니 이해가 된다 ㅇㅅㅇ
하지만
작업의 단위 는 질의어(SQL) 한 문장이 아니다
라고 또 혼란스럽게 하는중... 도대체 무슨소리인가 하고 또 구글링을 해봤다
게시판을 예로 들자면
게시판 글쓰기(INSERT) => 게시글 리스트 불러오기(SELECT)하여 최신 정보 유지
여기서 INSERT 와 SELECT 두개를 합친 것이 작업의 단위(트랜잭션) 이다
트랜잭션의 특징은 크게 4가지가 있는데 간단요약하자면
원자성(Atomicity) : 트랜잭션이 데이터베이스에 모두 반영되던지 전혀 반영되지 않아야 한다는 것
일관성(Consistency) : 트랜잭션의 작업 처리 결과가 항상 일관성을 유지해야함
독립성(Isolation) : 어떤 하나의 트랜잭션이라도, 다른 트랜잭션의 연산에 끼어들 수 없다는 점
지속성(Durability) : 트랜잭션이 성공적으로 완료됐을 경우, 결과는 영구적으로 반영되어야 함

아무튼 그렇다고 한다 ㅇㅅㅇ