-
N:N 데이터 관계 모델링Database 2020. 10. 21. 13:13728x90
1 N:N 관계해소 방법
① 기본적인 N:N 관계 해소 방법 - 관계 엔티티타입 분리
- 업무 규칙: "한번 납부할 때는 여러 개의 요금 고지서를 한꺼번에 납부할 수 있고 또 하나의 요금 고지서를 여러 번에 걸쳐 납부할 수 있다."
- N:N 관계 해소 방법 - 관계 엔티티타입 분리
② PRIMARY KEY에 의한 N:N 관계의 해소 방법 - PRIMARY KEY 통합
- 업무 규칙: "한번 납부할 때는 여러 개의 요금 고지서를 한꺼번에 납부할 수 있고 또 하나의 요금 고지서를 여러 번에 걸쳐 납부할 수 있다."
- N:N 관계 해소 방법 - PRIMARY KEY 통합
추가 설명
- 1) "하나의 요금 고지서를 여러 번에 걸쳐 납부한다." - 납부 엔티티타입에 요금번호(FK)가 존재 함으로 성립
- 2) "한번 납부할 때 여러 개의 요금에 대해 납부할 수 있다." - 납부 엔티티타입에 PRIMARY KEY가 납부번호와 요금납부순차전호로 되어 있음.
- 3) 위 관계는 자식 엔티티타입과 부모 엔티티타입과 반드시 필수관계인지 검증 후에 적용해야함.
특징
- 1) 통합되는 엔티티타입의 속성이 많지 않고 데이터 수정이 많지 않으며 읽는 작업이 많이 발생하는 엔티티타입의 경우 적당(속성이 많을 경우 데이터 중복 발생)
- 2) 데이터 모델이 단순해 질 수 있으며, 조인이 불필요하게 됨
③ 속성에 의한 N:N 관계의 해소 방법 - 부모 엔티티타입에 속성 추가
- 업무 규칙: "한번 납부할 때는 여러 개의 요금 고지서를 한꺼번에 납부할 수 있고 또 하나의 요금 고지서를 여러 번에 걸쳐 납부할 수 있다."
- 추가 업무 규칙: "하나의 요금고지서에 대해 최대 두 번까지는 분할 납부가 가능하다."
- N:N 관계의 해소 방법 - 속성에 의한 통합
특징
- 해당 업무 규칙의 최대값이 적은 것이어야 하며, 최대값이 변경될 가능성이 적어야 함
출처 : 구루비 강좌 http://www.gurubee.net/lecture/4228
728x90반응형'Database' 카테고리의 다른 글
오라클 vs MS SQL 함수 비교 (0) 2020.10.30 MSSQL 튜닝 기초 (0) 2020.10.30 MSSQL 특정문자열을 사용하는 SP,VIEW,Function,Trigger 찾기 (0) 2020.10.29 MSSQL 세션 정보 확인 (0) 2020.10.26 인덱스 조각 상태 쿼리 MS-SQL (0) 2020.10.22