可以說我有一個實體A和實體B。關係是1:1。如果我刪除A然後B也應該刪除。我已經設置了級聯刪除規則。現在讓我們假設我添加另一個實體C,它與1:1到B有關係。核心數據如何糾正設計
我不知道如何正確處理這個問題。如果A和C具有相同的B它應該是相同的實例B?或者我應該複製條目?如果它是相同的刪除A不能刪除B如果C有一個引用它。
此外,我怎樣才能強制執行這種1:1關係A和B?在我創建實體的那一刻,我也創建了一個實體,不檢查它是否已經在數據庫中。這不會失敗,並導致重複B。
編輯:爲了更好地理解我想要實現:
一個必須有一個乙。 C也必須始終有一個B。
例如讓我們假設我有一個實體商店(B)和一個實體收藏(A)。在未來,我可能會添加另一個也會使用Shop的實體。因此,如果用戶創建收藏夾,他會給它一個名稱和一個店。現在如果我不檢查這個店已經在數據庫中,我會創建另一個。另一方面,如果我允許重複我可以使用級聯刪除規則,一定不要害怕,如果我刪除一個收藏夾,它會離開另一個收藏一個空的店。
我感覺有點失落,我不確定這種情況下最佳做法是什麼。任何幫助都會增加。
唯一的好答案需要理解數據代表什麼以及如何使用它。有重複的** B **有意義嗎?也許,也許不是,答案取決於** B **實際代表什麼以及它與** C **的關係。 –
編輯了這個問題。我希望現在能更清楚我想實現的目標。 – kukudas