트랜잭션 (Transaction)
- 하나의 연속적인 업무 단위
- 트랜잭션에 의한 관계는 필수적인 관계 형태를 가짐
- 하나의 트랜잭션에는 여러 SELECT, INSERT, DELETE, UPDATE 등이 포함될 수 있음
예) 계좌이체 : A 고객이 B 고객에게 100만원을 이체하려는 경우
- A 고객의 잔액이 100만원 이상인지 확인
- 이상이면, A 고객 잔액을 -100 UPDATE
- B 고객 잔액에 +100 UPDATE
이 때, 2번과 3번 과정이 동시에 수행되어야 함 ≫ 모두 성공하거나 모두 취소되어야 함 (ALL or Nothing)
이런 특성을 갖는 연속적인 업무 단위를 트랜잭션이라고 함
** 주의
- A 고객 잔액 차감과 B 고객 잔액 가산이 서로 독립적으로 발생하면 안됨
- 각각의 INSERT 문으로 개발되면 안됨
- 부분 COMMIT 불가
- 동시 COMMIT 또는 ROLLBACK 처리
필수적, 선택적 관계와 ERD
- 두 엔티티의 관계가 서로 필수적일 때 하나의 트랜잭션을 형성
- 두 엔티티가 서로 독립적 수행이 가능하다면 선택적 관계로 표현
IE 표기법)
- 원을 사용하여 필수적, 선택적 관계를 구분
- 필수적 관계 ≫ 원을 그리지 않음
- 선택적 관계 ≫ 관계선 끝에 원을 그림
바커표기법)
- 실선과 점선으로 구분
- 필수적 관계 ≫ 관계선을 실선으로 표기
- 선택적 관계 ≫ 관계선을 점선으로 표기
'sqld' 카테고리의 다른 글
1-10) 본질식별자 vs 인조식별자 (0) | 2024.08.19 |
---|---|
1-9) Null 속성의 이해 (0) | 2024.08.19 |
1-7) 관계와 조인의 이해 (0) | 2024.08.19 |
1-6) 정규화 (0) | 2024.08.18 |
1-5) 식별자 (0) | 2024.08.08 |