2016-11-20 87 views
0

所以我是設計數據庫的新手,我試圖用一個系統來表示一個數據庫圖表,讓學生可以評價教授和學校。此外,學生和教授可以有他們的帳戶登錄。 這是一個適當的演示文稿,我缺少什麼作爲實體關係? 而且我不知道我是否需要使用任何繼承以及..設計與實體關係的數據庫

Entity Relation Diagram

回答

1
  1. 列舉的列是壞設計的良好指示。
    您需要額外的值表。
    一旦完成,沒有必要分開學校評級與教授評級 -
    使用包含評估者的id(總是一個學生在你的情況下)和id和類型(學校/教授)的額定元素。

  2. 我看不出有任何理由把學生和老師在不同的表。
    將其視爲具有角色屬性的人員表格。
    如果一個人可以是兩者,而不是角色屬性添加2個標誌列 - is_student和is_professor。

+0

Dudu我試過在你的設計中實現你的觀點,但是我一直在失敗..是否有可能幫助你表達新的實體關係圖? –

+0

讓我給你最好的建議,你會得到與數據工作。創建一個小樣本數據並使用它。忘掉其他一切。完成後,回到代碼/理論或任何它。在你做完這些之後跟我說話。 –

0

它看起來不錯,但你肯定SchoolRating和學生之間的relatioship應該是多對多的?不會評分只有一名學生(進行評分的學生)?

而且它不是很清楚,我爲什麼SchoolRating和ProfessorRating有這麼多的價值屬性。

+0

我認爲你是正確的關於關於多值那是因爲評級將包括學生要回答幾個問題外,並schoolRating學生之間的關係..我不知道是否有必要添加課程表,因爲學生將根據課程對教授進行評級。 –

0

初步審查:看起來很紮實,可能需要另一張桌子或擴大SchoolRating。

當你在設計時,專注於你的物體完成什麼,他們回答的事實問題。

SchoolRating有代表的評論或者是他們聚集的教師一組量的值?這些評論如何與教授評分糾正......或者他們沒有關係? (他們顯然做在一所學校......那麼,如何你的設計做到這一點?)

爲什麼學生有SchoolRating任何直接的關係?這張表不應該成爲教授和/或評分系統得分值的真實表格嗎?

爲什麼學生不能有多個教師或多個評論?如果學生沒有上課,但留下了評論......你的結構如何糾正同一名學生的新評論?

最後,不要在關係設計中使用繼承理論。它完全不符合關係集合理論,並且越早學會從系統中清除越好。

根據尺寸和事實進行思考。考慮基數,或者你計劃如何處理緩慢變化的暗淡度,數據庫列是否會提供效率。

概念,如星型模式,雪花設計堅固耐用按鍵,自然鍵大概應徵詢每當你懷疑你的設計。

在一天結束的時候,什麼問題你的表可以回答,系統將如何訪問這些表都一樣重要,如果不是更多的設計方法,因爲它涉及到正常化。