实验选课系统报告数据库课程设计样本_第1页
实验选课系统报告数据库课程设计样本_第2页
实验选课系统报告数据库课程设计样本_第3页
实验选课系统报告数据库课程设计样本_第4页
实验选课系统报告数据库课程设计样本_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要随着高等教诲不断进一步,大学实行选课制度是非常有必要,这样可以依照学生兴趣,自行选取自己喜欢课程。本系统就是为了适应新形势下高校教诲而开发大学生选课。通过集成从学生选课、学校开选修课、教师考勤、授课、上成绩等一系列功能,每个环节明确分工,并通过后台数据库支持,有效减小了人为因素导致差错,从而高效、便捷、精确为学生和教师服务,使学生选课和教师授课都变以便快捷。本系统由三类顾客构成,学生,教师和管理员。学生功能涉及选课,查寻实验信息等,教师功能涉及考勤,学生实验成绩录入,查寻实验信息等。管理员功能涉及新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。管理员可对教师,学生及实验课程信息进行修改;教师可对任课考勤,成绩进行修改;学生可以对自己选修课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可查询所任课程学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行记录;学生可查寻所学课程实验时间,教师名单;管理员具备全系统查寻功能。通过SQL数据库作为后台,完毕这一系列操作。核心字:选课系统数据库目录156661需求分析 134541.1系统功能规定与分析 116831.1.1系统功能规定分析 1190961.1.2设计环境 1269271.2数据字典 192541.2.1数据构造 1273831.2.2数据流 3152541.2.3数据项 3302012概念构造设计 5122242.1E-R图 5160072.2概念构造图 6146033逻辑构造设计 78673.1E-R图向关系模型转换 7110993.2关系模式 7164844物理构造设计 9134805数据库实行 10284685.1导入数据库 1095305.3建立表 1338645.3建立视图 13140455.4触发器设计 14132825.5存储过程 14129336总结 167545道谢 174151参照文献 181需求分析1.1系统功能规定与分析1.1.1系统功能规定分析实验选课系统分为教师,学生及系统管理员三类顾客,学生功能涉及选课,查寻实验信息等,教师功能涉及考勤,学生实验成绩录入,查寻实验信息等。管理员功能涉及新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。管理员可对教师,学生及实验课程信息进行修改;教师可对任课考勤,成绩进行修改;学生可以对自己选修课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可查询所任课程学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行记录;学生可查寻所学课程实验时间,教师名单;管理员具备全系统查寻功能。数据库规定:在数据库中至少应当包括下列数据表:教师,学生信息表:名字,密码等;课程信息表,课程名,学时等;实验室信息表;课程选修信息表,谁选了什么课程,谁任课,什么时间,地点;1.1.2设计环境基于WINDOWS操作系统,使用SQL和为数据库管理工具。1.2数据字典1.2.1数据构造依照课程设计任务书规定,经需求分析,需用到六个表,分别为学生表,教师表,管理员表,学生可选总课表,授课地点表,实验信息表。详细属性及其主码如表1.1所示,其中加下划线问该表主码。表1.1表属性和编号编号数据构造名属性1学生学号,学生姓名,性别,年龄,专业,年级,学生密码2教师教师号,授课教师,性别,所属系,教师密码3管理员管理员号,管理员名,性别,管理员密码4学生可选总课表课程号,课程名,学分5授课地点课程名,授学时间,授课教师,授课地点6实验室信息实验室号,实验室容量下面是本系统所需要六个基本表。表1.2学生表字段中文数据类型描述容许空Sno学号Char(10)顾客信息表唯一标记NoSname学生姓名Varchar(10)NoSsex性别Char(2)NoSage年龄Char(2)NoSdept专业Char(10)NoSgrade年级Char(10)Spassword学生密码Varchar(20)登陆实验选课系统密码No表1.3教师表字段中文数据类型描述容许空Tno教师号Char(10)顾客信息表唯一标示NoTname授课教师Char(10)NoTsex性别Char(2)NoTdept所在院系Varchar(40)NoTpassword教师密码Varchar(20)登录实验选课系统密码No表1.4管理员表字段中文数据类型描述容许空Ano管理员号Char(10)NoAname管理员名Varchar(10)NoAsex性别char(2)NoPassword管理员密码Varchar(20)登录实验选课系统密码No表1.5学生可选总课程表字段中文数据类型描述容许空Cno课程号Int主码NoCname课程名Varchar(40)NoCcredit学分Float(10)No表1.6授课地点表字段中文数据类型描述容许空Cno课程名Varchar(40)NoTname授课教师char(10)NoCaddress授课地点char(10)主码NoCtime授学时间char(10)主码No表1.7实验室信息字段中文数据类型描述容许空Lno实验室号char(10)主码NoLrongliang实验室容量char(4)No1.2.2数据流依照顾客需求分析,由学生,管理员和教师等基本表之间关系,总结出本系统所需要数据流,如表1.8所示。表1.8数据流编号数据流名输入输出1管理员开课信息课程新课程表2学生选课信息选课课程表3选课学生信息学生学号学生信息4实验室信息实验室号实验室容量,空余5管理信息管理员号,密码删除修改注册学生,教师信息6成绩信息教师号,密码学生成绩7教师考勤信息教师号教师考勤信息1.2.3数据项由数据构造在PowerDisgner中画出基本表,将表与表之间通过它们之间关系联系起来,生成了数据项如表1.2。表1.9数据项名称代码数据类型长度专业SdeptLA4040学分CcreditA22学号SnoA1010学生姓名SnameVA1010学生密码SpasswordLVA2020实验室号LnoA1010实验室容量LrongliangA44年级SgradeA1010年龄SageA22性别AsexA22性别TsexA22性别SsexA22所属系TdeptLVA4040授课地点CaddressA1010授课教师TnameA1010授学时间CtimeA1010教师号TnoA1010教师密码TpasswordLVA2020管理员号AnoA1010管理员名AnameVA1010管理员密码ApasswordLVA2020课程号CnoA1010课程名CnameLVA40402概念构造设计2.1E-R图依照顾客需求和数据构造画出本系统E-R图。图2.1E-R图选课选课姓名性别年龄专业年级密码学号课程名授学时间授课教师授课地点实验信息号数容量管理管理管理管理授课号学生可选总课表管理员学分密码性别名字编号课程名学生管理授课教师编号名字性别院系密码2.2概念构造图分析本系统需求,找出各个基本表之间联系,通过PowerDisgner画出概念构造图。如下图2.1。图2.2概念构造图3逻辑构造设计概念构造是独立于任何一种数据模型信息构造。逻辑构造设计任务就是把概念构造设计阶段设计好基本E-R图转换为数据库管理系统所支持数据模型符合逻辑构造。3.1E-R图向关系模型转换实体所相应关系模式。学生(学号,学生姓名,性别,年龄,专业,年级,学生密码)教师(教师号,授课教师,性别,所属系,教师密码)管理员(管理员号,管理员名,性别,管理员密码)学生可选总课表(课程号,课程名,学分)授课地点(课程名,授学时间,授课教师,授课地点)实验室信息(实验室号,实验室容量)学生表和学生可选总课表之间选课数相应“选课”关系模式。图3.1选课关系图教师和学生“教学”关系模式。图3.2教学关系模式3.2关系模式在PowerDesigner中建立好概念模型后,可以运用该软件自带功能将其转换成物理模型,物理模型连接数据库生成所相应表,然后运用SQL生成关系图,如图3.3。图3.3关系模式4物理构造设计概念模型转换为物理模型图4.1概念和物理模型转换5数据库实行5.1导入数据库通过建立ODBC数据源,将PowerDesigner中基本表和关系模型导入到数据库中,进行视图,存储操作。建立ODBC数据源。图5.1建立数据源“实验选课”是我在数据库里创立新数据库。图5.2建立新数据库ODBC数据源连接成功。图5.3数据连接在菜单DataBase中,单击Contect配备连接。图5.4配备连接建立连接之后,在打开DatabaseGeneration,将表导入数据库。图5.5导入数据库RUN之后,表就在数据库Class中了。图5.6导入成功从下面图,可以看出表已经成功导入数据库了。图5.7导入成功将建立表导入数据库后,就能对数据库进行有关插入、删除、更新等操作,数据库就实行起来了。5.3建立表createtableStudent(SnoChar(10)primarykeynotnull,SnameVarchar(10)notnull,SsexChar(10)notnull,SageChar(2)notnull,SdeptChar(10)notnull,SgradeChar(10)notnull,SpasswordVarchar(20)notnull);--建立学生表createtableTeacher(TnoChar(10)primarykeynotnull,TnameChar(20)notnull,TsexChar(8)notnull,TdeptVarchar(40)notnull,TpasswordVarchar(20)notnull);--建立教师表createtableAdministartor(AnoChar(10)primarykeynotnull,AnameVarchar(10)notnull,AsexChar(2)notnull,PasswordVarchar(20)notnull);--建立管理员表createtableCourse(CnoIntprimarykeynotnull,CnameVarchar(40)notnull,CcreditFloat(10)notnull);--建立课程表createtableCaddress(CnoIntnotnull,CnameVarchar(40)notnull,TnoChar(10)notnull,CaddressChar(10)notnull,CtimeChar(10)notnull,primarykey(Caddress,Ctime),foreignkey(Cno)referencesCourse(Cno),foreignkey(Tno)referencesTeacher(Tno));--上课地点表createtable教学(GradeChar(10)notnull,SnoChar(10)notnull,primarykey(Grade,Sno));--建立教学表createtableSC(SnoChar(10),CnoInt,primarykey(Sno,Cno),foreignkey(Sno)referencesStudent(Sno),foreignkey(Cno)referencesCourse(Cno));--建立学生选课表createtableAT(SalaryChar(10),TnoChar(10)primarykey,foreignkey(Tno)referencesTeacher(Tno));--建立管理员和教师表5.3建立视图--建立一种成绩不及格学生学号,姓名视图createviewStudent_不及格asselectStudent.Sname,Student.Snofrom教学,Studentwhere教学.Grade<60and教学.Sno=Student.Sno--建立学生选课视图createviewS_CasselectCourse.Cno,Student.SnofromStudent,Course--建立一种学生总课程表视图createview课程表asselectCourse.Cno,Course.Cname,Caddress.Tno,Caddress.Caddress,Caddress.Ctime,Course.CcreditfromCourse,CaddresswhereCourse.Cname=Caddress.CnameandCourse.Cno=Caddress.Cno--建立管理员-教师视图createviewAdmin_TasselectTeacher.Tno,Teacher.TnamefromTeacher,管教where管教.Tno=Teacher.Tnoand管教.Tname=Teacher.Tname--建立教师-课程视图createviewT_CasselectStudent.Sno,教学.GradefromStudent,教学where教学.Sno=Student.Sno5.4触发器设计在教学表里,考勤中放入旷课学生次数。当旷课次数多于4次时,系统激发触发器,该学生不具备考试资格,成绩设立为0。CREATETRIGGER考勤状况ON教学FORUPDATEASBEGINUPDATE教学SETGrade='0'WHERE考勤>4END;建立教师考勤触发器,当教室迟到3次以上系统激发触发器,该名教师没有年终奖励。CREATETRIGGER考勤教师ON教学FORUPDATEASBEGINUPDATE教学SETSALARY='0'WHERE考勤>3END;建立触发器禁止删除管理员,当尝试删除管理员信息时弹出消息提示。createtriggertrig_manager100onmanagerfordeleteas declare@cntint select@cnt=count(mno)fromdeletedwheremno=100 if@cnt<>0 begin raiserror('无法删除初始化管理员!',16,1)rollbacktransaction endgoselect*fromprovider5.5存储过程--学生信息存储过程CREATEPROCEDURESASBEGINSELECTSno,Sname,Ssex,Sage,Sdept,SgradeFROMStudentEND;--建立一种教师信息存储工程CREATEPROCEDURETASBEGINSELECTTno,Tname,TdeptFROMTeacherEND;--建立一种不及格学生存储过程CREATEPROCEDURE课程成绩ASBEGINSELECTStudent.Sno,Student.Sname,GradeFROMStudent,教学WHEREStudent.Sno=教学.SnoAND教学.Grade<60END;--建立一种成绩排序存储过程CREATEPROCEDURE成绩排序ASBEGINSELECTStudent.Sno,Student.SnameF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论