首先,我們大致的寫出要建的幾張表,並自定義其Code(所謂Code其實就是自定義一個欄位名,因為SQL語句不能由中文)
我們可以將不同的表按照不同的型別分開,這樣一個型別的表可以一起建並且相互之間的關係不會弄混
我們建立管理員表、老師表、學生表,起初每張表的屬性沒有必要填的過於全面,我們開始要注重的是表之間的關係,表的屬性可以在後面新增
1、建第一類表
老師和學生之間是多對多的關係(n:n)
學生和管理員之間是多對多的關係(n:n)
管理員和老師之間是多對多的關係(n:n)
2、建第二類表,並完善一、二類表相互之間的關係
班級和專業之間是多對一的關係(n:1)
專業和學院之間是多對一的關係(n:1)
學生和班級之間是多對一的關係(n:1)
學生和專業之間是多對一的關係(n:1)
學生和學院之間是多對一的關係(n:1)
老師和學院之間是多對一的關係(n:1)
管理員和學院之間無關係
3、建第三類表,並完善類表相互之間的關係
開課和老師之間是多對多的關係(n:n)
開課和管理員之間是多對多的關係(n:n)
選課和學生之間是多對多的關係(n:n)
選課和管理員之間是多對多的關係(n:n)
課程和學生之間是多對多的關係(n:n)
課程和老師之間是多對多的關係(n:n)
課程和管理員之間是多對多的關係(n:n)
成績和學生之間是多對多的關係(n:n)
成績和老師之間是多對一的關係(n:1)
成績和管理員之間是多對多的關係(n:n)
4、建第四類表,並完善類表相互之間的關係
公告和老師之間是多對一的關係(n:1)
公告和管理員之間是多對多的關係(n:n)
給每一張表新增屬性
其中name(名字)
code(資料庫中的欄位名)
Data Type(資料型別)
length(資料型別的長度)
M:Mandatory 是否為必填項 即非空
P:Primary Identifer 是否為主鍵
D:Displayed 是否可見
每一張表的主鍵,都不允許被其它任何一張表作為屬性使用 學生表
班級表
專業表
學院表
開課表
選課表
課程表
成績表
公告表
概念模型整體構圖:
→ 工具 → 【Check Model】
出現 [Check Model Parameters] 對話方塊。
執行後,警告屬於正常現象
→ 工具 → 【Generate Physical Data Model】
物理模型整體構圖:
pk: 主鍵
fk: 外來鍵
→ 資料庫 → 【Generate Database】
生成的sql語句如下:
工作空間、概念模型、物理模型、sql原始碼:
連結:https://pan.baidu.com/s/1O0dLB3km5h2xN045Go2qbA
提取碼:ukkp