数据库大作业——学生管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生管理系统数据库设计与实现
班级:
组成员及所完成的工作:
系统名称:学生管理系统
一.系统需求
a.该“学生管理系统”只是对数据库应用技术的一个样本数据库的实例,重在对数据
库一些方法的熟悉与掌握,其中包括从数据库的概念模型到ER图的绘制,再到数据库模式的建立(即为数据库及其基本表的建立),而后数据的录入(在此从略),最后完成一些简单的关系运算表达式的表达和相关的Select 查询语句的使用。
b.系统结构简述:
本系统包括六个实体:学生;课程;教师;学院;社团;活动
实体之间的关系转换为其他四个表:选修;代课;加入社团;组织活动(都是多对多关系的转换)
实体“学院”与“学生”之间一对多的关系转换到表“学生”中
注:各个基本表中关键字已在关系模式中说明
c.该数据库需要进行如下数据处理:
◎要查询所有学生的个人信息:
学号,姓名,性别,民族,出生年月,籍贯,身份证号,学院编号,所在专业
◎学生要查询本学期所开课程详细情况(成绩除外),并按“课程类型”分组
输入:学号
输出:学号,姓名,课程名,学分数,学时数,课程类型
◎对某个学生的社团活动用清单表示(按社团分组,活动时间升序排序):
输入:学号
输出:学号,姓名,活动名称,活动地点,活动时间,社团名称,详细内容
◎某位教师想查询自己本学期所代的课程及其上课情况:
输入:教师姓名
输出:教师编号,姓名,性别,课程名,课程类型,上课教室,上课时间
二.ER图
图1。社团活动ER图
图2。课程部分ER图
三.关系模式
系统中的实体有:学生;课程;教师;学院;社团;活动
关系模式如下:
学生(学号#,姓名,性别,民族,出生年月,籍贯,身份证号,宿舍号,学院编号,所在专业)
说明:属性中“学院编号”和“所在专业”是一对多关系“所属院系”的转换,宿舍号的格式为:_ _ - _ - _ _ _ _(_ 代表数字)
课程(课程编号#,课程名,课程类型,学分数,学时数)
选修(学号#,课程编号#,成绩)
教师(教师编号#,姓名,性别,学历,家庭住址,电话,备注)
代课(课程编号#,教师编号#,上课教室,上课时间)
说明:属性中“上课教室”的格式为:_ _ - _ _ _,“上课时间”的格式为:_ [1-7] _ : _ _ [S/D] [;_ [1-7] _ : _ _ [S/D] ]
社团(社团编号#,名称,所属级别,成立年份,会长编号,备注)
说明:属性中“所属级别”的取值为{校级,院级}
加入社团(学号#,社团编号#,入社日期,职务)
活动(活动编号#,名称,活动地点,发起日期,截止日期,详细内容)
组织活动(社团编号#,活动编号#)
学院(学院编号#,名称,学院类型,院长编号,院办地址,院办电话)
说明:“学院类型”可以看作是“工科”或者“理科”
◎要查询所有学生的个人信息
学号,姓名,性别,民族,出生年月,籍贯,身份证号,学院编号,所在专业
Select 学号,姓名,性别,民族,出生年月,籍贯,身份证号,学院编号,所在专业
From 学生
◎学生要查询本学期所开课程详细情况(成绩除外),并按“课程类型”分组
输入:学号
输出:学号,姓名,课程名,学分数,学时数,课程类型
设输入的学号的数值为x
Select S.学号,姓名,课程名,学分数,学时数,课程类型
From 学生as S,选修as X,课程as C
Where S.学号=X.学号and X.课程编号=C.课程编号and S.学号=x
Group by 课程类型
◎对某个学生的社团活动用清单表示(按社团分组,活动时间升序排序):输入:学号
输出:学号,姓名,活动名称,活动地点,活动时间,社团名称,详细内容设输入的学号为x
◎某位教师想查询自己本学期所代的课程及其上课情况:
输入:教师姓名
输出:教师编号,姓名,性别,课程名,课程类型,上课教室,上课时间
设输入的教师姓名为x
Select J.教师编号,姓名,性别,课程名,课程类型,上课教室,上课时间From 教师as J,代课as D,课程as C
Where J.教师编号=D.教师编号and D.课程编号=C.课程编号and 姓名=x
完成日期:年月日