Folder
, Group
, Document
등의 엔티티가 있다고 가정 해보십시오.서로 관련이있는 두 개의 테이블 참조
지금, 각 Folder
많은 Document
's의 이러한 Document
'의이 s는 Group
여부, 그 Folder
안에 할 수 있습니다.
따라서 Folder
에는 그룹화되고 그룹화되지 않은 Document
이 모두 포함됩니다.
이러한 관계를 어떻게 구성합니까?
나는 두 가지 방법을 생각했다 :
Document
는Group
에 속하고Group
는Folder
에 속한다. 이 은 모든Folder
(항상 못생긴)에 대해 항상 "그룹 해제 됨"Group
이 필요합니다.Document
는Group
는Folder
에 속Folder
및Group
모두에 속한다. 이 방법은Folder
및Group
에 대한 참조를 가지며 여기서group_id
은 "그룹 해제 됨"을 나타 내기 위해 null 일 수 있습니다. 그러나Group
이Folder
이 아닌 경우Document
을Group
/Folder
에 할당하여 오류가 발생합니다.
어느 해결책도 옳지 않습니다. 이것은 아마도 일종의 복합 키를 필요로하며 Document
은이를 참조합니다.
이 작업을 수행하는 올바른 방법은 무엇입니까?
실제로 그룹이 여러 폴더에 걸쳐 있지 않기를 바란다는 것을 잊어 버렸습니다. –
두 번째 접근 방식으로 응용 프로그램의 관계를 확인했습니다. –