這裏是場景: 有老師教各種學科。主題由章節組成。可能有不止一位教師講授相同的主題,但分配了不同的章節。章節中有主題,分主題(分層)。數據庫結構問題
我關心的是實體:章節,主題而已。章節具有像teacher_id,subject_id,title,designated_hours等屬性。主題(也有子主題和子主題可能包含其中的子主題,即分層)。主題屬性是標題,teaching_methodology,小時,句號,completion_date。
我提出的結構:
chapters topics
-id -id
-subject_id (fk) -chapter_id (fk) references chapters
-teacher_id (fk) -parent_id (fk) references topics itself
-title -title
-designated_hours -hours
-periods
-completion_date
-teaching_methodology
我的問題是我的結構是否標準化?如果主題具有子主題,則小時,句點,completion_date,teaching_methodology等字段將爲空。我應該爲這些屬性創建單獨的表,如
topic_properties
-id
-topic_id (fk) references topic
-hours
-periods
您還可以提出其他數據庫結構。我只想確保在我開始使用本模塊之前獲得結構
一章是否可以有多個(頂級)主題? –
yes章節可以有多個頂級主題 – rockstar
'句點'看起來有點可疑。你總是把它作爲一個整體來對待嗎?如果沒有(例如,如果它是逗號分隔的值列表),則違反[原子性](http://en.wikipedia.org/wiki/1NF#Atomicity)和1NF的原則。 –