하위 유형: 데이터베이스 설계의 딜레마
데이터베이스 설계 영역에서 공통을 공유하는 엔터티를 처리할 때 하위 유형 지정 문제가 발생합니다. 특성을 가지지만 독특한 속성도 나타냅니다. BOOKS, ARTICLES, NOTES라는 세 개의 테이블이 있는 시나리오를 생각해 보세요. 각 책이나 기사에는 여러 개의 메모가 있을 수 있습니다.
원래 디자인: 통합된 NOTES 테이블
초기 디자인은 다음과 같은 통합된 NOTES 테이블을 선택했습니다. 열:
이 스키마에서 note_type은 note는 책이나 기사와 연관되어 있는 반면 note_type_id는 외국
대안 디자인: 별도의 NOTES 테이블
대체 접근 방식은 NOTES를 별도의 테이블로 분할하는 것을 제안합니다. 테이블:
이 디자인은 책별 메모와 기사별 메모를 분리하여 추가 테이블을 도입합니다. 해당 항목에 연결하기 위해
옵션 평가
두 디자인 모두 장점이 있습니다. 통합된 NOTES 테이블은 단순성을 제공하며 추가 테이블이 필요하지 않습니다. 그러나 대체 디자인은 더 명확한 분리와 향후 확장 가능성을 제공합니다.
상위 유형/하위 유형 관점
PUBLICATION이 역할을 하는 상위 유형/하위 유형 접근 방식을 채택하는 것을 고려하세요. BOOKS 및 ARTICLES의 상위 유형입니다. 이는 PUBLICATION에 대한 외래 키가 있는 단일 공유 NOTE 테이블을 허용합니다. 이 구조를 사용하면 책이나 기사와 관계없이 노트를 원활하게 검색할 수 있습니다.
상위 유형/하위 유형 디자인의 이점:
예제 구조:
TABLE PUBLICATION ( ID (PK)
위 내용은 통합 또는 별도의 NOTES 테이블: 하위 유형을 가장 잘 처리하는 데이터베이스 디자인은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!