2010-09-15 54 views
0

我有一個包含許多表的數據庫設置。要查找用戶計算機,需要跨6個不同的數據庫表進行連接。太多數據庫加入以查找信息

我的用戶表和計算機表不直接連接。

我應該只用外鍵連接用戶和電腦表嗎?或者做所有的聯接?

還是我缺少別的東西?

回答

0

除非性能問題,否則不要規格化數據。這是一個維護危險。如果你正在與所有聯接鬥爭,爲什麼不簡化事宜呢?

+0

這可能是一個好主意。我不熟悉意見,所以我只是搜索他們,他們可能會工作。有什麼時候使用視圖和何時不使用視圖的簡單規則/示例? – SteveK 2010-09-15 23:04:42

+0

不,不是,但有關於保持數據正常化的非常明智的建議。我總是會選擇一種標準化的方法來複制不止一個地方的數據。當你回到6個月時間維護數據庫時,你會記得你的非規範化設置嗎?當你需要對某些部分進行更新時,你會記得更新重複的數據嗎?原子?您可能在短期內通過重複獲益,但幾乎總會有不必要的後果。一個正確的鍵/索引查找幾個表是不是一件壞事。 – spender 2010-09-15 23:09:01

0

無論您是否使用連接或denormalise是數據庫使用情況的函數。答案是,這取決於。例如,連接的頻率如何?什麼是目標 - 維護工作?性能?發展努力?

+0

目標是告訴用戶正在使用哪臺計算機。有沒有可能我錯誤地設置了我的數據庫模式? – SteveK 2010-09-15 23:03:17