




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、教学管理系统的设计与实现一、概述每年都有新生的入学,毕业生的离开。教师队伍的壮大,新课程的开设和旧课程的删除, 以及学生每学期的成绩记录。对它们的管理问题也是日益突显,所以需要一个专业的应用程序,利用数据库对这些数据进行组织和管理。本系统一一教学管理系统就是为了实现高效的管理这些数据而专门设计的。该教学管理系统是用PowerBuilder数据库应用开发工具 SQL嵌入式语言开发而来的。它主要包括学生管理、成绩管理、班级管理、课程管理以及教师管理,对学校的日常教学系统进行有效地组织。二、需求分析1、该教学管理系统是开发目标是有效管理学生,教师,课程等信息,实现这些信息的 数据录入、浏览、修改、查
2、询等,从而实现对信息的规范化、系统化、自动化管理。根据对 终端用户的调研,了解了用户端的需求,进行分析得出下面的几项需求:(1)由于信息具有一定的保密性,为了使拥有权限的管理员对数据进行管理,应该为用户 设置密码保护,在用户访问是该系统时进行身份的鉴别,以提高系统的数据安全性。(2 )使用该教学系统,能够实时对学生,教师信息时行记录,并能够非常方便地浏览、添 加、编辑和查询。(2 )成绩管理,能够对学生每学期的成绩进行录入,修改,并提供计算学生的平均成绩的 功能,以及每个班级某些课程的平均分进行计算。(4 )学校的班级数可能增加,有些班级也可能被撤编,所以应用程序应该能够方便地对学 生班级进行
3、添加、编辑、删除。同时班级系统还要记录算数学院和专业以及该班级的学生数 量。(5 )课程管理描述了课程号、课程名称、授课教师等重要教学方面的信息,课程号用于方 便学生的学课系统管理。2、根据以上需求抽象出的实体有学生实体,班级实体,课程实体,教师实体,各实体的E-R图如下:图1学生实体E-R图图2 班级实体E-R图图3 课程实体E-R图图4 教师实体E-R图图5各实体联系E-R图三、数据库逻辑设计根据图5得出各个关系模式:(带下划线的为主码) 学生信息表(学号,姓名,性别,出生日期,班级号,总学分)班级信息表(班级号,班级名,学院,专业,人数)课程信息表(课程号,课程名,学时,学分,开课学期,
4、教师号)教师信息表(教师号,教师名,性别,职称)成绩信息表(学号,课程号,分数,学期,班级号)用户表(用户名,密码)其中用户表是教学管理系统注册用户使用的。由关系模式得出关系表,如下:表1 stu学生信息表字段名数据类型含义说明空值情况学号Char(6)学生编号主关键字姓名varchar(20)学生姓名不为空性别Char(2)学生性别不为空出生日期Date出生日期可为空班级号Char(10)所在班级可为空总学分Dec(4,1)总学分可为空表2 class班级信息表字段名数据类型含义说明空值情况班级号Char(6)班级编号主关键字班级名Char(12)班级名称可为空学院Char(12)所在学院可
5、为空专业Char(12)所在专业可为空人数Dec(2)班级人数可为空表3 course课程信息表字段名数据类型含义说明空值情况】田千口 i=r. 课程号Char(6)课程编号主关键字课程名Char(12)课程编号不为空学时Dec(2)课程学时可为空学分Dec(2)课程学分可为空开课学期Dec(2)开课学期可为空教师号Char(6)授课教师外键表4 teacher教师信息表字段名数据类型含义说明空值情况教师号Char(6)教师编号主关键字教师名Char(8)教师姓名不为空性别Char(2)教师性别可为空职称Char(8)教师职称可为空表 5 score成绩信息表字段名数据类型含义说明空值情况学号
6、Char(6)学生编号主关键字】田千口 i=r. 课程号Char(6)课程编号主关键字分数Dec(2)考试分数可为空学期Dec(2)考试学期可为空班级号Char(6)班级编号可为空表6 user用户信息表字段名数据类型含义说明空值情况用户名Varchar(12)用户名称主关键字密码Varchar(12)用户密码不为空四、软件功能设计1、登录到教学管理系统可以完成系统管理功能,学生管理功能,成绩管理功能,班级 管理功能,班级管理功能,课程管理功能和教师管理功能(如图6)。系统管理:可以实现用户的添加和修改密码。学生管理:可以对学生的记录进行添加,删除,修改和查询。还可以统计某学生,某学 期的所有
7、课程的平均成绩。成绩管理:可以对成绩记录进行添加,删除,修改和查询。还可以统计某学生、某学期 的所有课程的平均成绩及按班级,按课程计算平均成绩、最高成绩、最低成绩、及格率。班级管理:可以对成绩记录进行添加,删除,修改和查询。课程管理:可以对课程记录进行添加,删除,修改和查询。教师管理:可以对课程记录进行添加,删除,修改和查询及教师授课情况的查询。图6软件功能图2、软件功能介绍(1 )首先进入用户登录界面,在该界面输入有效的用户名与密码,单击“确认”登录。如 果没有用户名和密码的话也可以自己注册。图7用户登录界面图8用户注册密码(2) 进入教学管理系统主应用界面后,单击对应的菜单栏选项,选择所需
8、的操作。图8 主页面(3) 打开学生管理菜单可以对学生的记录进行添加、删除、修改和查询。学号051 1OE袜一収3示里厂京岀蚩13期19C8-C<5520m出a 字万出生u用鉀分£M11A1主林黒1194 * 2-10"上女ib 6眇卸"I展存|帀一札卜彌1强三林19S9-1-2A4H.IF图9学生管理页面 可以对学生的姓名和班级分别进行查询。图10学生查询页面(4) 打开成绩管理菜单可以对成绩的记录进行添加、删除、修改和查询。图11成绩管理页面可以对学号,课程号分别查询,也可以学号、课程号一起查询。图12成绩查询页面1输入班级号、输入课程号计算平均成绩、最
9、高成绩、最低成绩、及格率成绩信息管理平均成绩悬高成绩最低成绩及格率输入班级号:95031计算输入谍程号计算图12成绩查询页面2统计某学生,某学期的所有课程的平均成绩图13学期平均成绩查询页面(5) 打开班级管理菜单可以对班级的记录进行添加、删除、修改和查询。图14班级管理页面输入班级号,对班级所有信息进行查询-ID, KI芋冼专业OS 631班计普平it市机£图15班级查询页面打开课程管理菜单可以对课程的记录进行添加、删除、修改和查询。图16课程管理页面输入课程号,对课程所有信息进行查询图17课程查询页面打开教师管理菜单可以对教师的记录进行添加、删除、修改和查询。图18教师管理页面输
10、入教师号,可对教师所授课程时行查询图 19 教师查询页面五、程序源代码下面给出系统的部分设计图及部分源代码(1) 在进行系统界面编程前,先建立数据库,并建立外键。(2) 数据库建立后,进行窗口编程。首先建立一个新的工作空间和应用。连接数据库, 在应用的 open 事件下输入如下代码:/ ProSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "Connectstring='DSN=student'"connect;if sqlca.sqlcode<>0 then
11、messageboxC连接失败","不能连接数据源”)returnend ifopen(w_login)(3) 学生管理页面、成绩管理页面、班级管理页面、课程管理页面、教师管理页面功能似, 类所以以学生管理页面为例,学生管理页面(图9)的代码如下:显示按钮 cb_3 的代码:dw_1.retrieve('%','%')添加按钮 cb_tianjia 的代码:string ls_ssexdec ls_szongif rb_1.checked thenls_ssex='男'elseif rb_2.checked thenls_ss
12、ex='女'end ifend ifls_szong=dec(sle_5.text)insert into stu values(:sle_1.text,:sle_2.text,:ls_ssex,:em_1.text,:sle_4.text,:ls_szong);commit;dw_1.retrieve('%','%')dw_1.scrolltorow(dw_1.rowcount()删除按钮 cb_1 的代码:dw_1.deleterow(dw_1.getrow()修改按钮 cb_4 的代码:dw_1.selectrow(dw_1.getrow(
13、),false)if cb_4.text=" 修改 " thendw_1.selectrow(dw_1.getrow(),true)cb_4.text=" 确认 "sle_1.text=dw_1.getitemstring(dw_1.getrow()," 学号 ") sle_2.text=dw_1.getitemstring(dw_1.getrow()," 姓名 ") em_1.text=string(dw_1.getitemdate(dw_1.getrow()," 出生日期 ") sle_4.
14、text=dw_1.getitemstring(dw_1.getrow()," 班级号 ") sle_5.text=string(dw_1.getitemdecimal(dw_1.getrow()," 总学分 ") if dw_1.getitemstring(dw_1.getrow()," 性别 ")='男 'then rb_1.checked=true rb_2.checked=falseelserb_2.checked=true rb_1.checked=false end if else cb_4.text=&q
15、uot; 修改 " string ls_ssex dec ls_szong if rb_1.checked thenIs_ssex='男'elseif rb_2.checked thenls_ssex='女'end ifend ifls_szong=dec(sle_5.text)dw_1.setitem(dw_1.getrow()," 学号 ",sle_1.text) dw_1.setitem(dw_1.getrow()," 姓名 ",sle_2.text) dw_1.setitem(dw_1.getrow(),
16、" 班级号 ",sle_4.text) dw_1.setitem(dw_1.getrow()," 总学分 ",dec(sle_5.text) dw_1.setitem(dw_1.getrow()," 出生日期 ",date(em_1.text) dw_1.setitem(dw_1.getrow()," 性别 ",ls_ssex) commit;sle_1.text=""sle_2.text=""sle_4.text=""sle_5.text="&
17、quot;em_1.text=""rb_1.checked=false rb_2.checked=false end if 修改按钮 cb_2 的代码: dw_1.update() 其中 dw_1 的 DataObject 属性为 d_stu.(4) 学生查询页面、 成绩查询页面、 班级查询页面、 课程查询页面、 教师查询页面功能类似, 所以以学生查询页面为例,学生查询页面(图10)的代码如下:学生查询按钮 cb_1 的代码: dw_1.retrieve('%'+sle_1.text+'%','') 班级查询按钮 cb_2 的
18、代码: dw_1.retrieve('','%'+sle_2.text+'%')其中 dw_1 的 DataObject 属性为 d_stu.(5) 按班级号、按课程号计算平均成绩、最高成绩、最低成绩、及格率功能类似,所以以查 询班级号的及格率为例,查询班级号的及格率页面(图12)的代码如下:Tab_1.tabpage_4.cb_7 的 clicked 事件下的代码为: integer count1,result,count2 declare jisuan cursor for select 分数 from scorewhere 班级号 =:sl
19、e_7.text;open jisuan;fetch jisuan into :result;do while sqlca.sqlcode=0 count2=count2+1 if result>=60 then count1=count1+1 end if fetch jisuan into :result;loop close jisuan;messagebox("提示",”该班级的及格率是:"+string(countl/count2)*100)+'%')(6) 查询教师授课成绩页面(图19)的代码如下:Teacher 表与 course 表以教师号为外键建立关联。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年关于格式合同的法律规制与挑战
- 2025混凝土拌合站租赁合同范本
- 2025年桥梁工程试题
- 2025年肠梗阻理论试题
- 幼儿园语言教育与活动设计 课件 第6、7章 幼儿园语言教育活动实施的价值取向与反思;幼儿园语言教育活动中的教师与幼儿
- 高三高考数学知识点总结
- 保险-72名亿万富翁死亡的背后
- 纵隔疝的临床护理
- 火灾应急流程制作指南
- 某咨询-北京世博伟业房地产0806一阶段人力资源诊断报告
- 会计案例分析-终结性考核-国开(SC)-参考资料
- 中国近代史纲要北京航空航天大学练习题复习资料
- 胸痹中医护理业务查房
- 装饰材料供应合同模板
- GB/T 44748.1-2024筛分试验第1部分:使用金属丝编织网和金属穿孔板试验筛的方法
- 2020-2021学年人教部编版八年级道德与法治下册 第一课 维护宪法权威 练习题
- 墙上高空作业施工方案
- 建筑垃圾清运优化方案
- 孩子在校被撞骨折调解协议书范文
- GB/T 33629-2024风能发电系统雷电防护
- 《n次方根与分数指数幂》名师课件
评论
0/150
提交评论