작성
·
404
·
수정됨
0
안녕하세요! 보여주신 erd에서 궁금증이 생겨서 질문 드립니다.
dms의 ReciverId과 mentions의 Receiverid 만 Non-identifying relation으로 맺어져 있고 나머지 관계들은 모두 Identifying Relation으로 맺어져 있는 이유가 뭘까요?
Non-Identifying Relation과 Identifying Relation의 차이는 Non의 경우는 부모와 자식의 관계를 맺을때 자식이 부모 없이도 독립적으로 존재 가능한 것이고, Identifying-Relation은 자식이 부모 없이는 존재가 불가능한 차이로 알고 있습니다.
DM과 Mention의 Receiver가 존재하지 않는다면, DM과 Mention의 정보가 불완전해질 것 같은데, 왜 non-identifying 일까요?
typeorm entity 코드를 봐도, DM과 User entity의 Sender와 Receiver의 코드가 완전 똑같은데, 왜 ERD에서는 Receiver는 non-identifying 이고 Sender는 identifying인지 모르겠습니다.
답변 1
0
그러면, nest-typerorm 의 entity 코드만 보았을때, N:N relation만 join colunm들이 Primary : true로 되어있고, 나머지 relation에서는 join column들이 nullable : true로 되어있는데, N:N 관계만 identifying relation이고, 나머지 관계들은 non-identifying relation이라고 이해하면 될까요?
네 점선을 제가 의도하고 만든 게 아니라서요.
보통 남의 pk가 아닌 고유한 pk가 있으면 non-identifying이 맞습니다. M:N만 identifying입니다.
마지막에 erdcloud 사진 보면, ReceiverId만 점선으로 이어져 있어서 여쭤봤습니다 ㅜㅜ