数据库练习题

题目:

某学校要设计一个数据库,学校的业务规则概括如下:

  • 学校内班级若干,每个班级内又有学生若干。

  • 学校开设课程若干,只有某些特定的班级能上指定的课程。

  • 学生选修某些课程,但是在自身班级下的课程是必修。

  • 学校定期组织考试,成绩囊括所有学生所有课程的考试成绩。

根据以上信息,我分析的实体属性有:

学生:学号(主键),姓名,性别,年龄,所属班级id(外键)

班级:班级id(主键),所属专业id(外键),班级人数

专业:专业id(主键),专业名称,

课程:课程id,课程名称,课程教师,课程类型(选修,必修),所属专业id(外键),

成绩:学生id(复合主键),课程id(复合主键,并且作为外键联系学生表和课程表),成绩

关系:

班级(Class)与学生(Student)之间的关系:

- 班级(Class)与学生(Student)之间是一对多的关系,即一个班级可以有多个学生,一个学生只属于一个班级。

学生(Student)与成绩(Score)之间的关系:

- 学生(Student)与成绩(Score)之间是一对多的关系,即一个学生可以有多个成绩记录,一条成绩记录只属于一个学生。

专业(Major)与班级(Class)之间的关系:

专业(Major)与班级(Class)之间是一对多的关系。即一个专业可以有多个班级,一个班级只属于一个专业。

专业(Major)与课程(Course)之间的关系:

- 专业(Major)与课程(Course)之间是一对多的关系,即一个专业可以有多门课程,一门课程只属于一个专业。

课程(Course)与成绩(Score)之间的关系:

- 课程(Course)与成绩(Score)之间是一对多的关系,即一门课程可以有多个成绩记录,一条成绩记录只属于一门课程。

由此画出e-r图

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值