\

해병 코딩

728x90
반응형

 

Transaction

 

◇데이터베이스 내에서 하나의 그룹으로 처리되어야 하는 명령문들을 모아 놓은 논리적인 작업 단위

◇여러 단계의 처를 하나의 처리처럼 다루는 기능

◇여러 개의 명령어의 집합이 정상적으로 처리되면 정상 종료 하나의 명려어라도 잘못되면 전체취소

 

데이터의 일관성을 유지하면서 안정적으로 데이터를 복구

 

 

Transaction 특징

 

원자성(Atomicity) 트랜잭션이 데이터베이스에 모두 반영되던가, 아니면 전혀 반영되지 않아야 한다는 것이다

 

일관성(consistency) 트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 한다는 것이다

 

독립성(lsoation) 둘 이상의 트랜잭션이 동시에 병행 실행되고 있을 경우에 어는 하나의 트랜잭션이라도 다른 트랜잭션의 연산을 끼어들 수없다

 

지속성(Durability) 트랜잭션이 성공적으로 완료됬을 경우, 결과는 영구적으로 반영되어야 한다는 점이다.

 

 

 

--------------------------------------------------------------------------------------------------------------------------------------------------------

 

COMMIT 

 

모든 작업들을 정상적으로 처리하겠다고 확정하는 명령어로 처리과정을 DB에 영구저장

 

수행하면, 하나의 트랜잭션 과정을 종료

 

이전 데이터가 완전히 UPDATE 된다

 

 

 

      ◇아래 그림에서 UPDATE 문으로 데이터를 갱신하고(③), DELETE 문으로 데이터를 삭제하고(④), INSERT 문을 사용해 데이터를 삽입(⑤)합니다.

 

      ◇만약 이 모든 과정이 오류 없이 수행되었다면 지금까지 실행한 모든 작업(③, ④, ⑤)"데이터베이스에 영구 저장하라"는 명령으로 커밋을 수행합니다.

 

 

◇롤백 명령은 마지막으로 수행한 커밋 명령까지만 정상 처리(①, ②)된 상태로 유지하고 그 이후에 수행했던 모든 DML 명령어 작업(③, ④, 
⑤)들을 취소시켜 이전 상태로 원상 복귀시킵니다.
 

 

 

◇트랜잭션은 이렇듯 All-OR-Nothing 방식으로 DML 명령어들을 처리합니다

 

 


저의 블로그 봐주셔서 감사합니다

 

재.미.있.게 보셧다면 아래 하트 ❤(공감) 과 댓글 부탁 드려요 .

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band