版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要随着高等教育的不断深入,大学实行选课制度是非常有必要的,这样可以根据学生 的兴趣,自行选择自己喜欢的课程。本系统就是为了适应新形势下的高校教育而开发的 大学生选课。通过集成从学生选课、学校开选修课、教师考勤、授课、上成绩等一系列 功能,每个环节明确分工,并通过后台数据库支持,有效减小了人为因素造成的差错, 从而高效、便捷、准确的为学生和老师服务,使学生选课和老师授课都变的方便快捷。本系统由三类用户组成,学生,教师和管理员。学生的功能包括选课,查寻实验信 息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。管理员的功能包括 新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任
2、课教师) 。管理员 可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生 可以对自己选修的课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可 查询所任课程的学生,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生 可查寻所学课程的实验时间,教师;管理员具有全系统的查寻功能。通过SQL数据库作为后台,完成这一系列的操作。关键字 :选课系统 数据库目录1 需求分析 . 11.1 系统功能要求与分析 . 11.1.1 系统功能要求分析 . 11.1.2 设计环境 11.2 数据字典 . 11.2.1 数据结构 11.2.2 数据流 31.2.3 数据项 32
3、概念结构设计 . 42.1 E-R 图 . 42.2 概念结构图 53 逻辑结构设计 . 63.1 E-R 图向关系模型转换 . 63.2 关系模式 74 物理结构设计 . 95 数据库的实施 . 105.1 导入数据库 105.3 建立表 135.3 建立视图 145.4 触发器设计 145.5 存储过程 . 146 总结 . 17致 . 18参考文献 . 191需求分析1.1系统功能要求与分析系统功能要求分析实验选课系统分为教师,学生及系统管理员三类用户,学生的功能包括选课,查寻 实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。管理员的功 能包括新建教师,学生账户,设定实
4、验课程信息(设定实验时间,地点,任课教师)。管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行 修改;学生可以对自己选修的课程重选,退选。管理员可删除教师,学生及实验课程信息。教师可查询所任课程的学生,实验时间,考勤及实验成绩,并可按成绩分数段进行统计; 学生可查寻所学课程的实验时间,教师;管理员具有全系统的查寻功能。数据库要求:在数据库中至少应该包含下列数据表:教师,学生信息表:名字,密码等;课程信息表,课程名,学时等;实验室信息表;课程选修信息表,谁选了什么课程,谁任课,什么时间,地点;设计环境基于WINDOWS作系统,使用SQL 2000和2005为数据库管理工具。
5、1.2数据字典数据结构根据课程设计任务书的要求,经需求分析,需用到六个表,分别为学生表,教师表, 管理员表,学生可选总课表,授课地点表,试验信息表。详细属性及其主码如表 1.1所 示,其中加下划线的问该表的主码。表1.1表的属性和编号编号数据结构名属性1学生 学号,学生,性别,年龄,专业,年级,学生密码2教师教师号,授课教师,性别,所属系,教师密码3管理员:管理员号管理员名,性别,管理员密码4学生可选总课課程号,课程名,学分表5授课地点课程名,授课时间,授课教师,授课地点6实验室信息实验室号,实验室容量F面是本系统所需要的六个基本表表1.2 学生表字段中文数据类型描述允许空Sno学号Char
6、(10)用户信息表的唯 一标识NoSn ame学生Varchar(10)No dSsex性别Char(2)NoSage年龄Char(2)NoSdept专业Char(10)No dSgrade年级Char(10)Spassword学生密码Varchar(20)登陆实验选课系统的密码No表1.3 教师表字段中文数据类型描述允许空Tno教师号Char(10)用户信息表的 唯一标示NoTn ame授课教师Char(10)NoTsex性别Char(2)NoTdept所在院系Varchar(40)NoTpassword教师密码Varchar(20)登录试验选课 系统的密码No表1.4管理员表字段中文数据类
7、型描述允许空Ano管理员号Char(10)NoAn ame管理员名Varchar(10)NoAsex性别char(2)No dPassword管理员密码Varchar(20)登录实验选课系 统的密码No表1.5 学生可选总课程表字段中文数据类型描述允许空Cno课程号Int主码NoCn ame课程名Varchar(40)NoCcredit学分Float(10)No表1.6授课地点表字段中文数据类型描述允许空Cno课程名Varchar(40)NoTn ame授课教师char(10)NoCaddress授课地点char(10)主码No1Ctime授课时间char(10)主码No表1.7 实验室信息字
8、段中文数据类型描述允许空Lno实验室号char(10)主码NoLron glia ng实验室容量char(4)No数据流根据用户需求分析,由学生,管理员和教师等基本表之间的关系,总结出本系统所需要的数据流,如表1.8所示。表1.8数据流编号数据流名输入输出1管理员开课信息课程t新课程表2学生选课信息选课课程表3选课学生信息学生学号学生信息4实验室信息实验室号实验室容量,空余:5管理信息管理员号,密码删除修改注册学 生,教师信息6成绩信息教师号,密码学生成绩7教师考勤信息教师号教师考勤信息数据项由数据结构在PowerDisgner中画出基本表,将表与表之间通过它们之间的关系联 系起来,生成了数据
9、项如表1.2。表1.9 数据项名称代码数据类型长度专业SdeptLA4040学分CcreditA22学号SnoA1010学生Sn ameVA1010学生密码SpasswordLVA2020实验室号LnoA1010实验室容量Lron glia ngA44年级SgradeA1010年龄SageA22性别AsexA22性别TsexA22性别SsexA22所属系TdeptLVA4040授课地点CaddressA1010授课教师Tn ameA1010授课时间CtimeA1010教师号TnoA1010教师密码TpasswordLVA2020管理员号AnoA1010管理员名An ameVA1010管理员密码
10、ApasswordLVA2020课程号CnoA1010课程名Cn ameLVA40402概念结构设计2.1 E-R 图根据用户需求和数据结构画出本系统的 E-R图。学号姓名年级图2.1 E-R图性别年龄专业授课选课L编号名字 性别密码 /'管理课程院系管 理教师密码学生可选总课表管学分 / 编号 7> 丄管理员/ /名字授课地点性别 k密码2.2概念结构图分析本系统的需求,构图。如下图2.1 0实验信号容数、J量1J找出各个基本表之间的联系,通过PowerDisgner画出概念结图2.2概念结构图学生管理学生教师学生可选总课程表授课管理教师管理员Iden tifier_pl>
11、;Iden tifier_?1>课程'授课地点理实验室信息授课地点实验地点A10 <MLVA20M管理授课地点管理员号pi>A10 <M 管理员名VA10 性别 A2 管理员密码LVA20学生上课地点教师号切*10 <M 授课教师A10 <M 性别 A2 <M 所属系 LVA40M 教师密码LVA20M课程名 LVA40M 授课地点i>A10 <M 授课教师A10 <M 授课时间i>A10 <MIden tifie<_1i>实验室号pi>X10<M实验室容量A4 <MIden tifi
12、er<pli>课程-号pi>A10 <M> 课程名LVA40M> 学分 A2 <M>年级 学生密码Iden tifie<jpi>VA10<MA2 <MA2 <MLA40<M学号 <pi>A10 <M学生姓名性别年龄专业课3逻辑结构设计概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念 结构设计阶段设计好的基本 E-R图转换为数据库管理系统所支持的数据模型符合的逻辑 结构。3.1 E-R图向关系模型转换实体所对应的关系模式。学生(学号,学生,性别,年龄,专业,年级,学生密码
13、) 教师(教师号,授课教师,性别,所属系,教师密码)管理员(管理员号,管理员名,性别,管理员密码)学生可选总课表(课程号,课程名,学分)授课地点(课程名,授课时间,授课教师,授课地点) 实验室信息(实验室号,实验室容量)学生表和学生可选总课表之间选课数对应的“选课”关系模式图3.1 选课关系图教师和学生“教学”关系模式。图3.2教学关系模式3.2关系模式在PowerDesigner中建立好概念模型后,可以利用该软件自带的功能将其转换成物 理模型,物理模型连接数据库生成所对应的表,然后利用SQL 2000生成关系图,如图3.3 o图3.3 关系模式CwnseAddiesslaihts: tMt
14、CtiM CmAJi*【C&QS¥TK bilsez>2:I:IE4物理结构设计概念模型转换为物理模型图4.1概念和物理模型转换学生学号 char(10) <pk> 管理员号char(10)<fk>学生姓名varchar(10) 性别 年龄 专业 年级char(2) char(2) varchar(40) char(10)FK_TEACHERj理教师ADMINIST学生密码varchar(20)FKJ选课选课STUDENT FK_教学_选课FK STUDE管理员号 char(10) <pk> 管理员名varchar(10) 性别 ch
15、ar(2) 管理员密码/archar(20)管理员学号 char(10)<pk,fk1> 课程号 char(10)<pk,fk2> 授课教师char(10)<pk> 授课时间char(10)<pk> 授课地点char(10)<pk> 学分 char(2) <pk>学生可选总课程表FK 授课.授课!COURSEFK_选课_选课2_COURSEALFK_COURSE学号 char(10)<pk,fk1 教师号 char(10)<pk,fk2课程号 char(10) <pk> 管理员号char(10)&l
16、t;fk>课程名 varchar(40) 学分 char(2)FK_COURsEA学生上课地点COURSEAL课程名 varchar(40) 授课地点char(10) 授课教师char(10) 授课时间char(10) 课程号char(10) 教师号char(10) 实验室号char(10) 管理员号char(10)STUDENTFK_COURSEA教学授课授课地点实验室信息A教师号 char(10)<pk,fk1>课程号 char(10) <pk,fk2>课程ADM考卽char(10)成绩 char(4)FK_COCRSEACHER教师教师号char(10)
17、39; 授课时间char(10) 授课地点char(10) 管理员 号char(10) S授课教师char(10) 性别 char(2) 所属系 varchar(40) 教师密码varchar(20)<pk><fk2><fk2><fk1><pk><pk><fk1><fk3><fk2><fk4>实验室号char(10)<pk> char(10)<fk2> char(10)<fk1> char(10)<fk1>点LBD管理员号授课时
18、间授课地点实验室容量char(4)5数据库的实施5.1导入数据库通过建立ODB(数据源,将PowerDesigner中的基本表和关系模型导入到数据库中, 进行视图,存储的操作。建立 ODB(数据源。图5.1 建立数据源此同辱幅牺删立一呼晦于连蜜SQL的ODBC融据理化理用忡么名昭痣桶毛戲啓頭“实验选课”是我在数据库里创建的新的数据库图5.2建立新数据库皆夏啟TtU的畫祗库片迎|S2J*Tt Wsx-ttP只有当聊群的1 (fl).1广 U/r.*rffT用盘、-r 朗 t 引用強识?f妙.十世屈AKSL的空備厂老壬SQL £*rv*r不可用,沽雰用能Ff转哼SQL 5£上一
19、竹下一步QP 5霰w啊 1ODB(数据源连接成功图5.3 数据连接在菜单的DataBase中,单击Contect配置连接。图5.4配置连接(S> PR西皿c'doiasouw;C (OD9C Fi#<J3»awxir«"*QmcctioriDioHerUser 心Passiwud."Ipainwji 彳formed . 匚ancui | Hdp |建立连接之后,在打开Database Gen eration将表导入数据库。图5.5导入数据库RUN之后,表就在数据库 Class中了。图5.6导入成功altw tAb 檢学idd rain
20、tACHEK foreitn key (Tnfr)refarsncs Teacher (7no)alt er t a)l« 选礫add cahs+t3int FK_i£iw5£ii_STUDENT fcrein key (Sna) reference? Student (3no)4alter t&tle i£i果l 、idd const taint FK.iif flj2_0QURSEAL foreign kex (Cno) references CourseAll (Cnfl)«»v彳 >Execui smemert
21、5siwiff ndew載学? FK or載学iTmASC*从下面的图,可以看出表已经成功的导入数据库了图5.7导入成功” j J MCCR050F<«006 (5QL Sffvw 9,0.1399 * MlCfl-WM*丄东城DUE岸* 銮峥快唱-IJte+ V垠陽庫关廉国. R-._j 雷 義l* J dto.AArw«urtw* dbo Cmx fcAdtiess* 二 dtn.CEwAl* dt»,Lt亠 _1 dbo .Student+ 二 dt».Twchw* 3血盛芋汁 n dt» w* 2 dt»,诒理r-43H
22、FI将建立的表导入数据库后,就能对数据库进行相关的插入、删除、更新等操作,数 据库就实施起来了。5.3建立表createtableStude nt(SnoChar ( 10)primarykey notn ull,Sname Varchar(10) notn ull,Ssex Char (10) notnull.Sage Char (2) not null,Sdept Char ( 10) not null,Sgrade Char ( 10) not null,Spassword Varchar ( 20) notnull);-建立学生表create table Teacher(Tno Cha
23、r ( 10) primary key not null,Tname Char ( 20) notnull,Tsex Char ( 8) not null,Tdept Varchar (40) notnull,Tpassword Varchar ( 20) notnull);-建立教师表create tableAdmini startor(Ano Char ( 10) primary key not null,Aname Varchar ( 10) notnull,Asex Char (2) not null,Password Varchar (20) not null);-建立管理员表cre
24、ate table Course(Cno Int primary key not null,Cname Varchar( 40) notCcredit Float ( 10) not );-建立课程表create table Caddressnull, null(Cno Int not null,Cname Varchar ( 40) not Tno Char ( 10) not null, Caddress Char ( 10) notnull,null,Ctime primary foreig n foreig nChar ( 10) not null,key ( Caddress , C
25、time key ( Cno) references key (Tno) refere nces),Course (Cno), Teacher ( Tno );-上课地点表Teacher ( Tno )create table 教学Sno Char ( 10),Cno Int>primarykey( Sno ,Cno ),foreignkey( Sno )referencesStudent( Sno )foreignkey( Cno)referencesCourse( Cno); - 建立学生选课表createtableAT( SalaryChar ( 10 ),( Grade Char
26、 ( 10) not null, Sno Char ( 10) not null, primary key ( Grade , Sno ) ); - 建立教学表 create table SC(Tno Char ( 10 ) primary key , foreign key ( Tno ) references ); - 建立管理员和教师的表5.3 建立视图- 建立一个成绩不及格的学生学号,的视图 create view Student_ 不及格 asselect Student . Sname , Student . Snofrom 教学 , Studentwhere 教学 . Grade
27、 < 60 and 教学 . Sno = Student . Sno - 建立学生选课视图createviewS_CasselectCourse. Cno, Student. SnofromStudent, Course- 建立一个学生总课程表的视图create view 课程表asselectCourse . Cno, Course . Cname , Caddress . Tno , Caddress . Caddress , Caddress . Ctime , Course . Ccreditfrom Course , Caddresswhere Course . Cname =
28、 Caddress . Cnameand Course . Cno = Caddress . Cno- 建立管理员 - 老师的视图create view Admin_Tasselect Teacher . Tno , Teacher . Tnamefrom Teacher , 管教where 管教 . Tno =Teacher . Tno and 管教 . Tname = Teacher . Tname- 建立老师 - 课程视图create view T_Casselect Student . Sno , 教学 . Gradefrom Student , 教学where 教学 . Sno =S
29、tudent . Sno5.4 触发器设计在教学表里,考勤中放入旷课学生的次数。当旷课次数多于 4 次时,系统激发触发器, 该学生不具有考试资格,成绩设置为 0。CREATE TRIGGER 考勤情况ON 教学FOR UPDATEAS BEGINUPDATE 教学 SET Grade = '0'WHERE 考勤 > 4END;建立教师考勤触发器,当教室迟到 3 次以上系统激发触发器,该名教师没有年终奖励CREATE TRIGGER 考勤教师 ON 教学FOR UPDATEAS BEGINUPDATE 教学 SET SALARY = '0'WHERE 考勤
30、> 3END; 建立触发器禁止删除管理员,当尝试删除管理员信息时弹出消息提示。 create trigger trig_manager100on managerfor deleteasdeclare cnt intselect cnt = count ( mno) from deleted where mno =100 if cnt <>0beginraiserror( ' 无法删除初始化管理员! ' , 16 , 1)rollback transactionendgoselect * from provider5.5 存储过程- 学生信息存储过程CREATE PROCEDURE SASBEGINSELECT Sno , Sname , Ssex , Sage , Sdept , SgradeFROM StudentEND;- 建立一个教师信息的存储工程CREATE PROCEDURE TASBEGINSELECT Tno , Tname , TdeptFROM TeacherEND;- 建立一个不及格学生的存储过程CREATE PROCEDU
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年两课时说课稿
- 2025-2026学年厨师创意美术说课稿
- 2025-2026学年《蝈蝈》说课稿
- 2025-2026学年多媒体教学活动说课稿
- 2026年浙江省兰溪市高二生物下册期末考试模拟试卷及参考答案(综合卷)
- 2026年广东省台山市高二生物下册期末考试模拟卷附答案【综合题】
- 2025-2026学年大班语言落叶说课稿
- 2025-2026学年化学实验室之旅说课稿
- 2025-2026学年匆匆说课稿结尾
- 2025-2026学年大班社会我的祖国说课稿
- 《礼赞伟大祖国 争做时代少年-小学四年级国庆主题班会》
- 《医疗器械临床使用管理办法》培训考试测试题含答案
- 综合管理竞聘测试题及答案
- 湖北武汉市2026-2027学年高三年级上学期9月调研考试英语试卷
- 2026年部编版新教材道德与法治五年级上册全套教学设计(共4个单元有教学计划)
- 人教版初中英语八年级上册第一单元完整教案
- 高考英语谓语与非谓语组合练100题(含答案)
- 国药数科2026届春季校园招聘建设笔试备考试题及答案解析
- 内分泌科护理服务质量管理标准
- 雨课堂在线学堂《大数据机器学习》作业单元考核答案
- (正式版)DB65∕T 3442-2013 《金丝玉》
评论
0/150
提交评论