目前,我們有這樣的設計用於存儲對象的多圖像/視頻網址:多個一對多的關係設計
tblCompany:
pkCompanyId
tblPerson:
pkPersonId
tblImage:
pkImageId
ImageUrl
fkCompanyId
fkPersonId
雖然這種設計處理:
- 一個公司有多個圖像
- 有一個人多個圖像
我不禁感到有與tblImage中的行有關的這個設計有一個問題,那就是外鍵列有很多NULL值。
有更好的設計嗎?設計中的更多對象(有些與公司或個人無關,有些與公司或個人相關)將具有圖像,因此當前的設計tblImage可能擁有越來越多的外鍵。
圖像總是會有一個公司和一個人,或只有一個或一個混合? – Mark
圖像將始終有一個外鍵引用(一個或另一個)。爲了用圖像支持設計中的其他對象,我們會向圖像表添加一個新的外鍵 - 例如,如果有一個不相關的需要多個圖像的「House」對象,我們會將fkHouseId添加到tblImage。 –