数据库课程设计实验选课系统.docx
- 文档编号:11375874
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:23
- 大小:310.77KB
数据库课程设计实验选课系统.docx
《数据库课程设计实验选课系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计实验选课系统.docx(23页珍藏版)》请在冰豆网上搜索。
数据库课程设计实验选课系统
重庆科技学院电子信息工程学院课程设计任务书
2008—2009学年第一学期
专业
计算机科学与技术
班级
计科普、计科应2006
课程名称
数据库原理
课程类别
1
(1.必修2.公选3.限选4.专选)
设计时间
从2008年12月15日至2008年12月26日
一、课程设计题目:
实验选课系统
二、课程设计要求:
按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计,使学生掌握数据库应用软件的开发流程,SQL语句的使用和存储过程的使用。
三、设计任务概述:
学生根据本课程设计指导书中的题目,进行设计。
1.根据需求分析,画出数据流图,写出数据字典,功能模块分析
2.根据前阶段结果,画出E-R图,并对实体做进一步描述
3.按照规则,将E-R图转换为关系模型
4.将关系模型转换为物理模型
5.通过存储过程完成系统基本功能,实现数据的测试
四、工作计划及安排:
16.1讲课阅读分析任务书制订设计计划
16.2-3需求分析概念结构设计
16.4-5概念结构设计准备文挡
17.1-3逻辑结构设计物理结构设计
17.4-5写文挡答辩交设计报告书
五、考核及成绩评定方式:
考勤20%设计成果60%(其中存储过程30%)答辩20%
指导
教师
签字
年月日
教研室
审核
意见
教研室主任(签字):
年月日
注:
表格空间不够可自行调整。
摘要
随着高等教育的不断深入,大学实行选课制度是非常有必要的,这样可以根据学生的兴趣,自行选择自己喜欢的课程。
本系统就是为了适应新形势下的高校教育而开发的大学生选课。
通过集成从学生选课、学校开选修课、教师考勤、授课、上成绩等一系列功能,每个环节明确分工,并通过后台数据库支持,有效减小了人为因素造成的差错,从而高效、便捷、准确的为学生和老师服务,使学生选课和老师授课都变的方便快捷。
本系统由三类用户组成,学生,教师和管理员。
学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。
管理员的功能包括新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。
管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。
管理员可删除教师,学生及实验课程信息。
教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。
通过SQL数据库作为后台,完成这一系列的操作。
关键字:
选课系统数据库
1需求分析
1.1系统功能要求与分析
1.1.1系统功能要求分析
实验选课系统分为教师,学生及系统管理员三类用户,学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。
管理员的功能包括新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。
管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。
管理员可删除教师,学生及实验课程信息。
教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。
数据库要求:
在数据库中至少应该包含下列数据表:
教师,学生信息表:
名字,密码等;
课程信息表,课程名,学时等;
实验室信息表;
课程选修信息表,谁选了什么课程,谁任课,什么时间,地点;
1.1.2设计环境
基于WINDOWSxp操作系统,利用PowerDesigner作为设计工具,使用SQL2000和2005为数据库管理工具。
在PowerDesigner中建立的概念模型生成物理模型,在通过ODBC连接到数据库中,建立关系图。
1.2数据字典
1.2.1数据结构
根据课程设计任务书的要求,经需求分析,需用到六个表,分别为学生表,教师表,管理员表,学生可选总课表,授课地点表,试验信息表。
详细属性及其主码如表1.1所示,其中加下划线的问该表的主码。
表1.1
编号
数据结构名
属性
1
学生
学号,学生姓名,性别,年龄,专业,年级,学生密码
2
教师
教师号,授课教师,性别,所属系,教师密码
3
管理员
管理员号,管理员名,性别,管理员密码
4
学生可选总课表
课程号,课程名,学分
5
授课地点
课程名,授课时间,授课教师,授课地点
6
实验室信息
实验室号,实验室容量
下面是本系统所需要的六个基本表。
1.学生表Student
表1.2
字段
中文
数据类型
描述
允许空
Sno
学号
Char(10)
用户信息表的唯一标识
No
Sname
学生姓名
Varchar(10)
No
Ssex
性别
Char
(2)
No
Sage
年龄
Char
(2)
No
Sdept
专业
LongChar(10)
No
Sgrade
年级
Char(10)
Spassword
学生密码
LongVarchar(20)
登陆实验选课系统的密码
No
2.教师表Teacher
表1.3
字段
中文
数据类型
描述
允许空
Tno
教师号
Char(10)
用户信息表的唯一标示
No
Tname
授课教师
Char(10)
No
Tsex
性别
Char
(2)
No
Tdept
所在院系
LongVarchar(40)
No
Tpassword
教师密码
LongVarchar(20)
登录试验选课系统的密码
No
3.管理员表Administartor
表1.4
字段
中文
数据类型
描述
允许空
Ano
管理员号
Char(10)
No
Aname
管理员名
Varchar(10)
No
Asex
性别
char
(2)
No
Password
管理员密码
Varchar(20)
登录实验选课系统的密码
No
4.学生可选总课程表Course
表1.5
字段
中文
数据类型
描述
允许空
Cno
课程号
Int(10)
主码
No
Cname
课程名
LongVarchar(40)
No
Ccredit
学分
Float(10)
No
5.授课地点表Caddress
表1.6
字段
中文
数据类型
描述
允许空
Cno
课程名
LongVarchar(40)
No
Tname
授课教师
char(10)
No
Caddress
授课地点
char(10)
主码
No
Ctime
授课时间
char(10)
主码
No
6.实验室信息Lib
表1.7
字段
中文
数据类型
描述
允许空
Lno
实验室号
char(10)
主码
No
Lrongliang
实验室容量
char(4)
No
1.2.2数据流
根据用户需求分析,由学生,管理员和教师等基本表之间的关系,总结出本系统所需要的数据流,如表1.2所示。
表1.8
编号
数据流名
输入
输出
1
管理员开课信息
课程
新课程表
2
学生选课信息
选课
课程表
3
选课学生信息
学生学号
学生信息
4
实验室信息
实验室号
实验室容量,空余
5
管理信息
管理员号,密码
删除修改注册学生,教师信息
6
成绩信息
教师号,密码
学生成绩
7
教师考勤信息
教师号
教师考勤信息
1.2.3数据项
由数据结构在PowerDisgner中画出基本表,将表与表之间通过它们之间的关系联系起来,生成了数据项如表1.2。
表1.9
名称
代码
数据类型
长度
专业
Sdept
LA40
40
学分
Ccredit
A2
2
学号
Sno
A10
10
学生姓名
Sname
VA10
10
学生密码
Spassword
LVA20
20
实验室号
Lno
A10
10
实验室容量
Lrongliang
A4
4
年级
Sgrade
A10
10
年龄
Sage
A2
2
性别
Asex
A2
2
性别
Tsex
A2
2
性别
Ssex
A2
2
所属系
Tdept
LVA40
40
授课地点
Caddress
A10
10
授课教师
Tname
A10
10
授课时间
Ctime
A10
10
教师号
Tno
A10
10
教师密码
Tpassword
LVA20
20
管理员号
Ano
A10
10
管理员名
Aname
VA10
10
管理员密码
Apassword
LVA20
20
课程号
Cno
A10
10
课程名
Cname
LVA40
40
2概念结构设计
2.1概念结构图
分析本系统的需求,找出各个基本表之间的联系,通过PowerDisgner画出概念结构图。
如下图2.1。
图2.1
2.2E-R图
根据用户需求和数据结构画出本系统的E-R图。
图2.2
3逻辑结构设计
概念结构是独立于任何一种数据模型的信息结构。
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为数据库管理系统所支持的数据模型符合的逻辑结构。
3.1E-R图向关系模型转换
实体所对应的关系模式。
学生
(学号,学生姓名,性别,年龄,专业,年级,学生密码)
教师
(教师号,授课教师,性别,所属系,教师密码)
管理员
(管理员号,管理员名,性别,管理员密码)
学生可选总课表
(课程号,课程名,学分)
授课地点
(课程名,授课时间,授课教师,授课地点)
实验室信息
(实验室号,实验室容量)
学生表和学生可选总课表之间选课数对应的“选课”关系模式。
图3.1
教师和学生“教学”关系模式。
图3.2
3.2关系模式
在PowerDesigner中建立好概念模型后,可以利用该软件自带的功能将其转换成物理模型,物理模型连接数据库生成所对应的表,然后利用SQL2000生成关系图,如图3.3。
图3.3
4物理结构设计
概念模型转换为物理模型
图4.1
5数据库的实施
5.1导入数据库
5.1.1创建数据源
通过建立ODBC数据源,将PowerDesigner中的基本表和关系模型导入到数据库中,进行视图,存储的操作。
建立ODBC数据源。
图5.1
Class是我在数据库里创建的新的数据库。
图5.2
ODBC数据源连接成功。
图5.3
5.2.2PowerDesigner中建立连接
在菜单的DataBase中,单击Contect配置连接。
图5.4
建立连接之后,在打开DatabaseGeneration,将表导入数据库。
图5.5
RUN之后,表就在数据库Class中了。
图5.6
从下面的图,可以看出表已经成功的导入数据库了。
图5.7
将建立的表导入数据库后,就能对数据库进行相关的插入、删除、更新等操作,数据库就实施起来了。
5.3建立视图
1.建立一个成绩不及格的学生学号,姓名的视图。
createviewStudent_不及格
as
selectStudent,Sno,Sname
from教学,Student
where教学.Grade<60and教学.Sno=Student.Sno
2.建立一个实验室容量的视图。
createviewLib_容量
as
selectLno
fromLib
3.建立一个学生总课程表的试图
CREATEVIEW课程表
AS
SELECTCourseAll.Cno,CourseAll.Cname,CourseAddress.Tname,CourseAddress.Caddress,CourseAddress.Ctime,
CourseAll.Ccredit
FROMCourseAll,CourseAddress
WHERECourseAll.Cname=CourseAddress.Cname
ANDCourseAll.Cno=CourseAddress.Cno
5.4触发器设计
在教学表里,考勤中放入旷课学生的次数。
当旷课次数多于4次时,系统激发触发器,该学生不具有考试资格,成绩设置为0。
CREATETRIGGER考勤情况
ON教学
FORUPDATE
ASBEGIN
UPDATE教学SETGrade='0'
WHERE考勤>4
END;
5.5存储过程
1.建立一个学生信息的存储过程。
CREATEPROCEDURESTUDENT
AS
BEGIN
SELECTSno,Sname,Ssex,Sage,Sdept,Sgrade
FROMStudent
END;
2.建立一个教师信息的存储工程。
CREATEPROCEDURETEACHER
AS
BEGIN
SELECTTno,Tname,Tdept
FROMTeacher
END;
3.建立一个课程表的存储过程。
CREATEPROCEDURE课程表
AS
BEGIN
SELECTCourseAll.Cno,CourseAll.Cname,CourseAddress.Tname,CourseAddress.Caddress,CourseAddress.Ctime,
CourseAll.Ccredit
FROMCourseAll,CourseAddress
WHERECourseAll.Cname=CourseAddress.Cname
ANDCourseAll.Cno=CourseAddress.Cno
END;
4.建立一个不及格学生的存储过程。
CREATEPROCEDURE课程表
AS
BEGIN
SELECTStudent.Sno,Student.Sname,Grade
FROMStudent,教学
WHEREStudent.Sno=教学.SnoAND教学.Grade<60
END;
5.建立一个成绩排序的存储过程。
CREATEPROCEDURE成绩排序
AS
BEGIN
SELECTStudent.Sno,Student.Sname
FROMStudent,教学
ORDERBY教学.Grade
END;
6.建立一个管理员的存储过程。
CREATEPROCEDURE管理员
AS
BEGIN
SELECTAno,Aname
FROMAdministor
END;
6总结
经过一学期的数据库学习,让我掌握的数据库的基础知识,在这两个星期的课程设计中,在基础知识的指导下,使我顺利完成课程设计的相关题目。
以前上课的基础知识当时觉得和枯燥,到课程设计的时候,才发觉所学的知识很重要,没有学习很好,课程设计进行的不是很顺利。
在课程设计中,巩固基础知识,将知识用在设计中,感觉受益匪浅。
使用POWERDESIGNER数据模工具对数据库逻辑结构的建立,转换为物理结构,然后连接如SQL2000或2005,然后进行触发器设计和存储结构。
在运用工程中遇到很多问题,在老师和同学的帮助下,成功的解决了问题,学习了宝贵的经验。
虽然这些天学习很累,但是学习到很多东西,身体累心不累。
致谢
通过两个星期的时间,我的课程设计划圆满的完成。
本次的课程设计能够顺利的完成,仅是靠我本人单方面的努力是不行的,还得到老师和同学的帮助,在这里我要表示感谢。
首先,感谢学校提供给我们这么好的学习环境,在这样优越的环境下,对我课程设计的圆满完成有提供了硬件基础。
然后,也感谢裴养军老师、雷亮老师、王双明老师这三位辅导老师的不辞劳苦、不厌其烦的对我们细心的指导。
最后,还要感谢给予我帮助的同学,课程设计的圆满完成有你们的一份功劳。
在本次课程设计完成时,由衷的感谢帮助过我的人。
参考文献
[1]丁振凡.Java语言实用教程.北京邮电大学出版社.2006.9
[2]丁振凡.Java语言实用教程实验指导.北京邮电大学出版社.2006.9
[3]萨师煊.数据库系统概论.高等教育出版社.2006.9
[4]曾平.数据库原理与应用.清华大学出版社.2006.10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 实验 选课 系统