2012-08-27 103 views
0

我希望從你的數據庫設計知識一點點:)MySQL數據庫設計 - 檢查系統

我試圖建立一個登記系統的辦公樓。

會發生什麼事是:

  1. 一個代碼被稱爲關於建設A.
  2. 指定的用戶應該掃分配給他們的一個或多個區域炸彈威脅。
  3. 用戶然後將檢查他們的區域。 (沒有檢查,檢查 - 沒有問題,檢查 - 問題)

我將需要建立一個接口,將拉動所有傳入的提交。

Users 
--------------- 
id | name | username | password 

Buildings 
--------------- 
id | name 

Sections 
--------------- 
id | building_id | name 

Assignments 
--------------- 
id | section_id | user_id 

所以這個整體設計作品給用戶部分(多對多)和部分分配給建築物(一對一)

我有被存儲的實際意見,同時能夠的問題是什麼以便以後輕鬆檢索它們。

我希望能夠以允許用戶更新答案的方式存儲提交。查看舊的答案。提交新的答案。

任何建議,非常感謝。

謝謝!

+0

你爲什麼不添加一個表提交(ID,USER_ID,building_id,SECTION_ID,時間戳,check_result) – hol

+0

應該'Sections.name'是'Sections.user_id' ?你需要提交*歷史記錄*,還是隻查看和/或更改最後的結果? –

+0

@AndrewLeach我需要提交的歷史記錄。 Sections.name只是它的一個標籤。用戶被分配到Assignments表中。 –

回答

2

我想你還需要一個事件和響應表。

事件將是日期時間和任何細節(炸彈威脅 - 尋找揹包)。

當輸入事件時,系統應預先填寫響應表,所有分配的響應值均未檢查。隨着每個人的迴應,你都會添加他們的回覆,以及回覆的日期時間。你知道什麼還沒有被檢查,通過運行一個查詢,並拉最大響應日期時間分組由assignID,事件過濾。

然後,您可以在所有響應中運行日誌,以分析響應最快的響應。

0

從您所在的位置開始,我將添加一份報告表格,用於報告中需要回復的報告。這將包括當然的ID,報告生成時的日期/時間字段,狀態字段(例如收到的報告,確定不需要響應的報告,正在進行的響應,已接觸的緊急服務,完成響應)以及可能的(「炸彈威脅」)和一個自由文本字段作爲描述(「未知的男性來電者在MDT上午10點23分給前臺打了電話,並表示大型炸彈已被放置在大樓內地下室B.收到前臺接待員J. Random在上午10:28收到的報告。「)

然後你還需要一個答案表。這至少包括其自己的唯一ID,事件ID,作出響應的用戶的用戶ID,響應的部分ID,記錄響應的日期/時間,「響應類型」字段(例如待處理的響應,正在進行的響應,未發現的問題,已發現的潛在問題/推薦緊急服務聯繫人)以及允許響應者輸入響應更多細節的自由文本字段。由於這是緊急響應的日誌,因此您可能需要考慮對其他記錄進行修改/補充以反映更新,而不是覆蓋或更新現有的記錄,但這取決於您和用戶的需求。這個系統可以讓你通過記錄進行直接更新,任何一種方式都可以很容易地讓你記錄用戶以前對問題的反應。

0

我會建議增加以下表格:

一)威脅

  • ID
  • threatdate
  • 描述
  • 其他列捕捉的元數據威脅

b)th reatstatus

  • ID
  • threat_id
  • checker_id
  • SECTION_ID
  • 狀態
  • datechecked(假設(誰檢查不一定是誰被賦予一個人),它可能並不總是在同一天也適用於午夜支票),筆記(如果有的話),
  • building_id(此列重複以加快查找速度,使您不會不得不加入到部分找到大樓)