首先,我们大致的写出要建的几张表,并自定义其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