對不起,標題可以使用「捷徑」引用來跳過表關係嗎?
我有以下關係,一個盒子屬於一個插槽,屬於一個機架,屬於冰箱。相反,冰箱有許多機架,有很多插槽,有一個盒子。
對於一些操作,知道盒子在冰箱內的位置是沒有必要的。如果我有從箱子到冰箱的捷徑,它會簡化一些查詢。
這是不好的,如果有的話,爲什麼要在箱子裏的冰箱裏放一個外鍵?
對不起,標題可以使用「捷徑」引用來跳過表關係嗎?
我有以下關係,一個盒子屬於一個插槽,屬於一個機架,屬於冰箱。相反,冰箱有許多機架,有很多插槽,有一個盒子。
對於一些操作,知道盒子在冰箱內的位置是沒有必要的。如果我有從箱子到冰箱的捷徑,它會簡化一些查詢。
這是不好的,如果有的話,爲什麼要在箱子裏的冰箱裏放一個外鍵?
通過在兩個不同的地方記錄與一個箱子的冰箱協會您創建了矛盾出現的可能性。因此,您必須創建額外的約束邏輯來確保冗餘數據一致或接受數據可能錯誤。
如果您使用支持參照完整性強制約束的數據庫,那麼該數據庫將幫助您避免編程忘記更新非規格化表中的外鍵值的代碼。 – 2011-04-18 12:37:26
是的,我同意。雖然我沒有看到問題中使用的數據庫的類型,所以我只列出了它,因爲這是額外的,您需要以某種形式進行說明。 – 2011-04-18 12:44:16
感謝您的回答和評論。我應該提到我正在使用MySQL。 – kaklon 2011-04-18 13:02:54