数据库练习题

该文章描述了一个学校数据库的设计,涉及学生、班级、专业、课程和成绩等实体,阐述了它们之间的关系,如一对一、一对多关系,并要求绘制E-R图来表示这些关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

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

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

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

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

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

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

学生:学号(主键),姓名,性别,年龄,所属班级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图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值