유튜브 뉴렉처님의 강의를 토대로 정리. :www.youtube.com/channel/UC5-ixpj8DioZqmrasj6Ihpw
트랜잭션: 일괄 공개 하나의 단위
만약
<1. UPDATE NOTICE SET PUB=1 WHERE ID IN (2,4,6,7,9)
2. UPDATE NOTICE SET PUB=0 WHERE ID IN (2,4,6,7,9)>
(PUB는 비공개로 한다는 것임)
위의 두 가지 일을 한 번에 일괄적인 서비스로 본다면 이것은 하나의 트랜잭션이다.
즉 트랜잭션: 하나의 단위로 수행되길 바라는 쿼리의 묶음(=업무 수행단위, 논리적인 수행 단위)
근데 두 가지일중 하나가 에러가 난다면 트랜잭션이 깨진 것이다.
트랜잭션이란 1번은 성공하고 2번의 작업에 실패했을 때 1번도 성공 이전의 상태로 돌려놔야한다.
트랜잭션을 위한 4가지: ACID
A: automaticity 원자성
C: consistency 일관성 - 트랜잭션에 제약조건을 적용시키는 것.
I : Isolation 고립성 - 내가 일을 처리할 동안 다른 일은 진행되어선 안됨.
D: durability 지속성 - 변경된 데이터 내용이 트랜잭션이 끝난 후 완전히 적용되어야한다.(commit)
'java spring > jdbc' 카테고리의 다른 글
jdbc6 (상세조회, 페이징) (0) | 2021.03.30 |
---|---|
jdbc 5 (Notice 서비스 만들기1) (0) | 2021.03.24 |
jdbc4(Mysql jdbc연결) (0) | 2021.03.24 |
jdbc3 (0) | 2021.03.24 |
jdbc1 (0) | 2021.03.16 |