簡體   English   中英

實體關系

[英]Entity relation

以下實體關系正確嗎? 我正在嘗試鏈接員工,時間表和批准者表。

其他表和字段很少,但是對於這個問題,我主要關注以下三個表。 一名員工可以擁有多個時間表批准者。

Employee
--------
EmpID pk
Name
TimeSheet
------------
TSHEET_ID PK
FK_EmpID FK
Approved_By
Timesheet_Approver (one employee can have more than one approver
                    but only one will be approving the timesheet)
------------------
EmpID
Approver_EmpID 

員工表數據:

EmpID Name
----- -----
1     john
2     david
3     mark

時間表批准者數據:

EmpID Approver
----- --------
1     2
1     3
2     3

時間表

TSID EMPID APPROVED_BY
---- ----- -----------
101  1     2
102  1     3
103  2     3



或者這看起來還好嗎?

在此處輸入圖片說明

我的建議

為什么要將Approver作為單獨的表格? 能否在Employee表中保留IsApprover類的Bit字段? 否則,您將創建redundancy

我覺得設計有問題。 這是我的主意。

雇員

EmpID pk

名稱

時間表

TSHEET_ID PK

FK_EmpID

由...批准

第三張表是不必要的。

如果有多個批准,我們無法將一個名為Approved_by的列添加到TimeSheet表中。 然后,我們可以再添加兩個關系。 一種是批准者名單。

批准人

審批者編號

名稱

TimeSheet批准

TimeSheetID

Department1ApproverID

Department2ApproverID

.......................... so on

不要忘記將Approved_by刪除到TimeSheet實例中。

雇員

EmpID-密碼

名稱

時間表

TSHEET_ID-PK

EmpID-FK

審批者ID-FK

批准人

審批者編號

好的,這是我的最終答案。 如果不合適,您可以嘗試自己的一個。 我沒有時間閱讀所有這些評論。 我正在努力幫助您。 使用“批准者”關系,您可以在部門中獲得批准者和其他東西。 檢查sql查詢以獲取那些數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM