2013-05-27 187 views
1

我有三個表:是否合併表?

TABLENAME: Workers 
    Workers_ID 
    VNAME 
    LNAME 
    WindwsUserName 
    Sex 

TABLENAME: Contract 
    Contract_ID 
    Hours_to_work 
    MA_ID 
    Parttime/Fulltime 
    Days_of_Holiday 
    Days_of_Work_per_week 
    Contract_StartDate 

什麼時候一個工人工作。某些人可以工作,例如只有星期一3小時和星期五4小時。所以有成千上萬種不同的組合。

TABLENAME: Workdays_Details 
    Workdays_Details_ID 
    MA_ID 
    Monday 
    Hours_on_Monday 
    Tuesday 
    Hours_on_Tuesday 
... 

但設置這些表後,我認爲......嗯......我不能把所有這一切放在桌子上。由於例如contract_ID隨合同表中的MA_ID增加因爲有許多個人合同,因爲每個人都可能有不同的working_per_hours

您認爲如何?我應該把所有東西放在一張桌子上,還是有一個原因,我不應該這樣做?

回答

1

我不知道它是否適用於您,但也許您應該考慮將Workdays_Details表更改爲MA_ID,Day,Hours之類的內容,並將其設置爲與合同表的「多對一」關係,而不是添加2表中每天的列(總共14個),每行只添加2個。

我認爲這是一個更好的解決方案。