1、数据库课程设计实验选课系统重庆科技学院电子信息工程学院课程设计任务书2008 2009 学年第 一 学期专 业计算机科学与技术班 级计科普、计科应2006课程名称数据库原理课程类别1(1.必修 2.公选 3.限选 4.专选)设计时间从 2008 年 12 月 15 日至 2008 年 12 月 26 日一、课程设计题目:实验选课系统 二、课程设计要求:按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计,使学生掌握数据库应用软件的开发流程,SQL语句的使用和存储过程的使用。三、设计任务概述:学生根据本课程设计指导书中的题目,进行设计。1根据需求分析,画出数据流图,写出数据字
2、典,功能模块分析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%指导教师签字 年 月 日教研室审核意见教研室主任(签字): 年 月 日注:表格空间不够可自行调整。摘要随着高等
3、教育的不断深入,大学实行选课制度是非常有必要的,这样可以根据学生的兴趣,自行选择自己喜欢的课程。本系统就是为了适应新形势下的高校教育而开发的大学生选课。通过集成从学生选课、学校开选修课、教师考勤、授课、上成绩等一系列功能,每个环节明确分工,并通过后台数据库支持,有效减小了人为因素造成的差错,从而高效、便捷、准确的为学生和老师服务,使学生选课和老师授课都变的方便快捷。本系统由三类用户组成,学生,教师和管理员。学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。管理员的功能包括新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。管理员可对教师
4、,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。通过SQL数据库作为后台,完成这一系列的操作。关键字:选课系统 数据库 1 需求分析1.1系统功能要求与分析1.1.1 系统功能要求分析实验选课系统分为教师,学生及系统管理员三类用户,学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。管理员的功能包括新建教师,学生账户,设
5、定实验课程信息(设定实验时间,地点,任课教师)。管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。数据库要求:在数据库中至少应该包含下列数据表:教师,学生信息表:名字,密码等;课程信息表,课程名,学时等;实验室信息表;课程选修信息表,谁选了什么课程,谁任课,什么时间,地点;1.1.2设计环境基于WINDOWS xp操作系统,利用PowerDesi
6、gner作为设计工具,使用SQL 2000和2005为数据库管理工具。在PowerDesigner中建立的概念模型生成物理模型,在通过ODBC连接到数据库中,建立关系图。1.2数据字典1.2.1数据结构根据课程设计任务书的要求,经需求分析,需用到六个表,分别为学生表,教师表,管理员表,学生可选总课表,授课地点表,试验信息表。详细属性及其主码如表1.1所示,其中加下划线的问该表的主码。表1.1编号数据结构名属性1学生学号,学生姓名,性别,年龄,专业,年级,学生密码2教师教师号,授课教师,性别,所属系,教师密码3管理员管理员号,管理员名,性别,管理员密码4学生可选总课表课程号,课程名,学分5授课地
7、点课程名,授课时间,授课教师,授课地点6实验室信息实验室号,实验室容量下面是本系统所需要的六个基本表。1.学生表 Student表1.2字段中文数据类型描述允许空Sno学号Char (10)用户信息表的唯一标识NoSname学生姓名Varchar(10)NoSsex性别Char(2)NoSage年龄Char(2)NoSdept专业Long Char(10)NoSgrade年级Char(10)Spassword学生密码Long Varchar(20)登陆实验选课系统的密码No2.教师表 Teacher表1.3字段中文数据类型描述允许空Tno教师号Char(10)用户信息表的唯一标示NoTname
8、授课教师Char(10)NoTsex性别Char(2)NoTdept所在院系LongVarchar(40)NoTpassword教师密码Long Varchar(20)登录试验选课系统的密码No3.管理员表 Administartor表1.4字段中文数据类型描述允许空Ano管理员号Char(10)NoAname管理员名Varchar(10)NoAsex性别char(2)NoPassword管理员密码Varchar(20)登录实验选课系统的密码No4.学生可选总课程表Course表1.5字段中文数据类型描述允许空Cno课程号Int(10)主码NoCname课程名Long Varchar(40)N
9、oCcredit学分Float(10)No5.授课地点表Caddress表1.6字段中文数据类型描述允许空Cno课程名Long Varchar(40)NoTname授课教师char(10)NoCaddress授课地点char(10)主码NoCtime授课时间char(10)主码No6.实验室信息Lib表1.7字段中文数据类型描述允许空Lno实验室号char(10)主码NoLrongliang实验室容量char(4)No1.2.2数据流根据用户需求分析,由学生,管理员和教师等基本表之间的关系,总结出本系统所需要的数据流,如表1.2所示。表1.8编号数据流名输入输出1管理员开课信息课程新课程表2学
10、生选课信息选课课程表3选课学生信息学生学号学生信息4实验室信息实验室号实验室容量,空余5管理信息管理员号,密码删除修改注册学生,教师信息6成绩信息教师号,密码学生成绩7教师考勤信息教师号教师考勤信息1.2.3数据项由数据结构在PowerDisgner中画出基本表,将表与表之间通过它们之间的关系联系起来,生成了数据项如表1.2。表1.9名称代码数据类型长度专业SdeptLA4040学分CcreditA22学号SnoA1010学生姓名SnameVA1010学生密码SpasswordLVA2020实验室号LnoA1010实验室容量LrongliangA44年级SgradeA1010年龄SageA22
11、性别AsexA22性别TsexA22性别SsexA22所属系TdeptLVA4040授课地点CaddressA1010授课教师TnameA1010授课时间CtimeA1010教师号TnoA1010教师密码TpasswordLVA2020管理员号AnoA1010管理员名AnameVA1010管理员密码ApasswordLVA2020课程号CnoA1010课程名CnameLVA40402 概念结构设计2.1 概念结构图分析本系统的需求,找出各个基本表之间的联系,通过PowerDisgner画出概念结构图。如下图2.1。图2.12.2 E-R图根据用户需求和数据结构画出本系统的E-R图。图2.23
12、逻辑结构设计概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为数据库管理系统所支持的数据模型符合的逻辑结构。3.1 E-R图向关系模型转换实体所对应的关系模式。学生(学号,学生姓名,性别,年龄,专业,年级,学生密码)教师(教师号,授课教师,性别,所属系,教师密码)管理员(管理员号,管理员名,性别,管理员密码)学生可选总课表(课程号,课程名,学分)授课地点(课程名,授课时间,授课教师,授课地点)实验室信息(实验室号,实验室容量)学生表和学生可选总课表之间选课数对应的“选课”关系模式。图3.1教师和学生“教学”关系模式。图3.23.2 关
13、系模式在PowerDesigner中建立好概念模型后,可以利用该软件自带的功能将其转换成物理模型,物理模型连接数据库生成所对应的表,然后利用SQL 2000生成关系图,如图3.3。图3.34 物理结构设计概念模型转换为物理模型图4.15 数据库的实施5.1 导入数据库5.1.1创建数据源通过建立ODBC数据源,将PowerDesigner中的基本表和关系模型导入到数据库中,进行视图,存储的操作。建立ODBC数据源。图5.1Class是我在数据库里创建的新的数据库。图5.2ODBC数据源连接成功。图5.35.2.2 PowerDesigner中建立连接在菜单的DataBase中,单击Contec
14、t配置连接。图5.4建立连接之后,在打开Database Generation,将表导入数据库。图5.5RUN之后,表就在数据库Class中了。图5.6从下面的图,可以看出表已经成功的导入数据库了。图5.7将建立的表导入数据库后,就能对数据库进行相关的插入、删除、更新等操作,数据库就实施起来了。5.3 建立视图1.建立一个成绩不及格的学生学号,姓名的视图。create view Student_不及格asselect Student,Sno,Snamefrom 教学,Studentwhere 教学.Grade 4END;5.5存储过程1.建立一个学生信息的存储过程。CREATE PROCEDU
15、RE STUDENTASBEGINSELECT Sno,Sname,Ssex,Sage,Sdept,SgradeFROM StudentEND;2.建立一个教师信息的存储工程。CREATE PROCEDURE TEACHERASBEGINSELECT Tno,Tname,TdeptFROM TeacherEND;3.建立一个课程表的存储过程。CREATE PROCEDURE 课程表ASBEGINSELECT CourseAll.Cno,CourseAll.Cname,CourseAddress.Tname,CourseAddress.Caddress,CourseAddress.Ctime,C
16、ourseAll.CcreditFROM CourseAll,CourseAddressWHERE CourseAll.Cname = CourseAddress.Cname AND CourseAll.Cno = CourseAddress.CnoEND;4.建立一个不及格学生的存储过程。CREATE PROCEDURE 课程表ASBEGINSELECT Student.Sno,Student.Sname,GradeFROM Student,教学WHERE Student.Sno = 教学.Sno AND 教学.Grade 60END;5.建立一个成绩排序的存储过程。CREATE PROCE
17、DURE 成绩排序ASBEGINSELECT Student.Sno,Student.SnameFROM Student,教学ORDER BY 教学.GradeEND;6.建立一个管理员的存储过程。CREATE PROCEDURE 管理员ASBEGINSELECT Ano,AnameFROM AdministorEND;6 总结经过一学期的数据库学习,让我掌握的数据库的基础知识,在这两个星期的课程设计中,在基础知识的指导下,使我顺利完成课程设计的相关题目。以前上课的基础知识当时觉得和枯燥,到课程设计的时候,才发觉所学的知识很重要,没有学习很好,课程设计进行的不是很顺利。在课程设计中,巩固基础知
18、识,将知识用在设计中,感觉受益匪浅。使用POWERDESIGNER数据模工具对数据库逻辑结构的建立,转换为物理结构,然后连接如SQL 2000或2005,然后进行触发器设计和存储结构。在运用工程中遇到很多问题,在老师和同学的帮助下,成功的解决了问题,学习了宝贵的经验。虽然这些天学习很累,但是学习到很多东西,身体累心不累。致谢通过两个星期的时间,我的课程设计划圆满的完成。本次的课程设计能够顺利的完成,仅是靠我本人单方面的努力是不行的,还得到老师和同学的帮助,在这里我要表示感谢。首先,感谢学校提供给我们这么好的学习环境,在这样优越的环境下,对我课程设计的圆满完成有提供了硬件基础。然后,也感谢裴养军老师、雷亮老师、王双明老师这三位辅导老师的不辞劳苦、不厌其烦的对我们细心的指导。最后,还要感谢给予我帮助的同学,课程设计的圆满完成有你们的一份功劳。在本次课程设计完成时,由衷的感谢帮助过我的人。参考文献1丁振凡 . Java语言实用教程 . 北京邮电大学出版社 . 2006.92丁振凡 . Java语言实用教程实验指导. 北京邮电大学出版社. 2006 . 93萨师煊 . 数据库系统概论. 高等教育出版社. 2006.94曾平 . 数据库原理与应用. 清华大学出版社. 2006.10
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1