0

我在建模這個問題時遇到了很大的問題。我正在寫一個考試考試應用程序(在MS-Access中,但這不是真正相關的),並且需要發送一些報告。數據庫建模電子郵件列表和報告類型

第一份報告是在一個人完成考試後自動發出的。第二份報告每兩週發送一次(或任何他們想要設置的報告)。

這些報告的內容包含考試信息。根據考試類型,某些人需要通過電子郵件發送。此外,根據頻率(每次考試或每2周)也需要有所區別。

我對如何設置這個有一些真正的保留。我真的不知道這是否正確,如果數據庫架構設置不正確,這將是一項大量的工作。

所提出的模式如下:

----------- 
|Exam List| 
----------- 
    \|/ 
    | 
    | 
----------- 
|Exam Type| 
----------- 
    | 
    | 
    /|\ 
------------ ----------- 
|Email List|>---|Frequency| 
------------ ----------- 
    \|/ 
    | 
    | 
----------- 
|Employees| 
----------- 

你們有什麼覺得?我擔心頻率設置的方式不會完全描述數據,我必須在Access中容納大量的IF語句來容納(我試圖避免的東西,不像以前的程序正在被這個取代)。

+0

怎麼樣一個例子 - 這將幫助。 – 2010-08-17 11:35:30

回答

0

員工正在參加考試嗎?我認爲你至少錯過了員工和考試之間的一種關係(employeeExam,你可以在其中存儲諸如dateExamTaken和分數的東西,也可能是諸如resultsSent之類的標誌)

它可能有助於還包括一個用於審計的mailSent表和調試目的。

+0

這是一個部分模式。還有更多的表格。這個模式只是與電子郵件相關的(建議的)表格。 – Nitrodist 2010-08-16 22:32:47

+0

因此,員工有多個電子郵件列表,考試類型也有多個電子郵件列表(我自己沒有得到這個列表),並且頻率可以應用於多個列表。 更具體的例子可以幫助我們幫助你。 你能列出你希望在每個表中看到的一些行嗎? – Beth 2010-08-17 15:02:27

1

那麼,這可能是一個開始。

  • Test是服用ExamEmployee的動作。員工可以多次參加考試。
  • 一個Exam是一定的ExamType
  • 接收郵件的人(Recipient)也是員工。
  • 每個Recipient可以在指定Frequency調度(EmailSchedule)對於每個ExamType不同的電子郵件(Template)。
  • 根據EmailSchedule,電子郵件排隊到EmailQueue每個Test

alt text