2010-09-28 151 views
0

我想讓用戶在線創建他們的簡歷。恢復創建將有一些步驟。第一步恢復後將被保存。他可以稍後輸入其他步驟的數據,也可以在第一步之後移動到下一步。數據庫設計 - 表格標準化

步驟1個人信息: 標題 名 地址 電話 電子郵件

第2步工作經歷: 職業目標 最近的位置 上的位置(他可以進入儘可能多的位置,因爲他可以)

第3步教育: (標題,完成年等)(許多)

step 4技能: 非技術性 計算機技能(許多)

我已經決定,將有一個表不需要超過一個條目的字段。例如,用戶將擁有許多計算機技能,教育,以前的職位,這就是爲什麼他們都會在其他表格中使用獨特的resumeID,其餘的領域將留在簡歷表中。

根據數據庫的優雅方法嗎?或者我應該爲每一步製作單獨的表格,因爲它們會有單獨的表格,我將很容易處理。

回答

1

規範化是非冗餘信息,換言之:可能沒有條目的重複。

你的計劃可能是這樣的:

Person -> has 1 or many EmploymentHistory 
     -> has 1 or many Education 
     -> has 1 or many Skill 

你可以自己決定要如何處理此問題。您可以在所設計的表格中創建一套教育和技能對象,或按上述方式進行。如果您創建教育和技能表,您的計劃可能看起來像:

Person -> 1 or many -> LinkTable PersonToEducation -> 1 or many -> Education 
     -> 1 or many -> LinkTable PersonToSkill  -> 1 or many -> Skill 
+0

0123!數據庫模式應該針對實體進行設計。前端邏輯應該對前端影響最小 – Tassadaque 2010-09-28 16:33:24