2012-02-28 58 views
1

在我調度數據庫,我有一個「任務」表具有以下字段:我應該規範化一個包含許多重複的日期字段嗎?

| assignment_date | start_time | end_time | task_ID | staff_ID | 

每個工作人員每天將有六個,七個不同的任務,這意味着與目前員工數量會有approxmiately任何單獨日期的250個條目。

我想知道是否有任何情況值得將日期字段提取到單獨的表中(即將assignment_date更改爲assignment_date_ID)。

這是否正常化了一步?我可以想象它會使查詢變得更加複雜一點,但是您能否想到這種結構的任何優勢都可以抵消額外的複雜性?

回答

5

使用ID號替換日期(或文本或其他任何內容)與標準化完全無關。追捕那個教你這個想法的人,用尖銳的棒子戳他們的眼睛。

如果您想限制可接受日期的範圍,可以使用外鍵到可接受日期的表格。這是添加表格的一個很好的理由;它也與標準化無關(它與數據完整性有關);並且你不應該在那個表中輸入一個id號碼,也就是表。

+2

+1「用尖刺戳着眼睛」 – Aaron 2012-02-28 01:33:03

+0

我認爲我需要大幅改善我的正常化心理模型。你有沒有立即引用任何參考資料,可以幫助啓發我關於ID /外鍵/標準化?或者,我應該只是去谷歌搜尋:) – Alex 2012-02-28 01:53:03

+0

要開始,谷歌'網站:stackoverflow.com「無關正常化」'。 – 2012-02-28 02:05:45

相關問題