pb设计报告-学生选课系统

上传人:第*** 文档编号:56884041 上传时间:2018-10-16 格式:DOC 页数:26 大小:887.50KB
返回 下载 相关 举报
pb设计报告-学生选课系统_第1页
第1页 / 共26页
pb设计报告-学生选课系统_第2页
第2页 / 共26页
pb设计报告-学生选课系统_第3页
第3页 / 共26页
pb设计报告-学生选课系统_第4页
第4页 / 共26页
pb设计报告-学生选课系统_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《pb设计报告-学生选课系统》由会员分享,可在线阅读,更多相关《pb设计报告-学生选课系统(26页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程名称: pb 进阶与实践 设计题目 学生选课系统 专业:信息与计算科学 班级: 信 122 姓名: 韩云凤 魏德康 学号: 2012314225 2012314108 指导教师: 孙宏凯 河北建筑工程学院数理系2015 年 1 月课程设计题目(问题)描述课程设计题目(问题)描述当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最到好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。 尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的

2、开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好学生选课信息而设计的。 学生选课作为一种信息资源的集散地,包含很多的信息数据的管理。 由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的学校有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发基本环境。 数据处理手工操作,工作量大,出错率高,出错后不易更改。造成了时间上的浪费 基于这个问题,我认为有必要建立一个学生选课系统,使学生选课信息管理工作规范化、系统化、程序化,避免学生选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情

3、况本本 组组 成成 员员 情情 况况姓 名学号承 担 的 任 务成 绩韩云凤2012314225程序设计与调试魏德康2012314108数据库的构建与连接教 师 评 语签名: 注:本设计报告中各个部分如果页数不够,请大家自行扩页,原则是一定要把报告写详细,能 说明本组设计的成果和特色,能够反应小组中每个人的工作。报告中应该叙述设计中的每个模块。 设计报告将是评定每个人成绩的一个重要组成部分。一、本 组 设 计 的 功 能 描 述教师 1. 学生信息的录入 2. 系统用户的增加 3. 课程的导入 4. 学生信息的查看 5. 课程信息的管理 学生 1. 个人信息查看 2. 选课 3. 退课 4.

4、密码修改 二、本 组 设 计 的 主 要 特 色学生选课作为一种信息资源的集散地,包含很多的信息数据的管理。 由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。数据处理手工操作,工作量大,出错率高,出错后不易更改。造成了时间上的浪费。基于这个问题,我认为有必要建立一个学生选课系统,使学生选课信息管理工作规范化、系统化、程序化,避免学生选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。本系统就是为了管理好学生选课信息而设计的。该系统可以实现学生选课的一些重要功能,如:课程的添加、删除,信息查询、选课、生成课表,以及学生选课管理人员、

5、用户个人信息的维护等。我主要是应用 PowerBuilder 为前端开发工具,利用 SQL 语言实现数据查询。设计系统时,先从系统的数据流程开始分析,设计系统的业务流程图、系统的数据流程图、系统的 E-R 图。接着制定系统的设计思想,分析系统的功能并设计系统的功能模块,系统数据库的建立,主要有各个功能窗口的设计,将设计好的窗口集中到主菜单上,通过用户的用户名和密码的登录可以进入到主窗口,这样就完成系统的制作。三、系 统 分 析 与 设 计3.13.1 可行性分析可行性分析本系统的开发利用 PowerBuilder 作为开发工具。PowerBuilder 是一个图形化的应用程序开发环境,使用 P

6、owerBuilder 可以很容易地开发和数据库打交道的商业化应用软件。 系统采用 SQL Server 2005 作为开发数据库。SQL Server 2005 是一种客户机/服务器结构的关系数据库管理系统。SQL Server 2005 提供了许多易于使用的图形化工具和向导,其中最常用的是服务管理器、企业管理器和查询分析器。它们为创建和管理数据库带来了很大的方便。在技术难度方面,有周围同学的热心帮助,加上对很多相关资料的参考,能够解决开发过程中所遇到的困难。由于本系统管理对象简单,主要是对数据库的操作,且每个数据库内容具有较强的关联性,设计过程不复杂。因此,整个软件的使用非常简便,对于计算

7、机用户的要求也不高,且本系统所耗费的资源非常小,只需要在一般的电脑上面就能够使用这个软件,简单、方便、快捷的实现对保险信息进行管理。3.23.2 必要性分析必要性分析学生选课数据处理手工操作,工作量大,出错率高,出错后不易更改。造成了时间上的浪费。基于这个问题,我认为有必要建立一个学生选课系统,使学生选课信息管理工作规范化、系统化、程序化,避免学生选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。3.33.3 系统需求分析系统需求分析系统可以实现学生选课的一些重要功能,如:课程的添加、删除,信息查询、选课、生成课表,以及学生选课管理人员、用户个人信息的维护

8、等。3.43.4 系统总体结构设计系统总体结构设计 系统主要有以下几个模块组成,如图所示:图 3-1 学生选课流程3.53.5 E-RE-R 图图经过上述系统功能分析和需求总结,设计如下所示的实体和属性的定义:课程信息(课程代号,课程名称,授课教师,教室,剩余名额,上课时间,学分)学生信息(学号,姓名,性别,班级,出生年月日,是否已选课)学生登录信息(学号,用户名,密码,权限代号)学生选课信息(学号,课程代号,学期,课程成绩)用户权限(权限名称,权限代号)。本系统根据上面的设计规划出的实体有:课程信息实体,学生信息实体,学生登录信息实体,学生选课信息实体,用户权限实体。实体之间关系的 E-R

9、图如图 3-2 所示。图 3-2 系统 E-R 图课程信息实体 E-R 图,如图 3-3 所示:图 3-3 课程信息实体 E-R 图学生选课实体 E-R 图,如图 3-4 所示:图 3-4 学生选课实体图学生信息实体 E-R 图,如图 3-5 所示:图 3-5 学生信息实体图登录信息实体 E-R 图,如图 3-6 所示:图 3-6 登录信息实体图用户权限实体 E-R 图,如图 3-7 所示:图 3-7 用户权限实体图3.63.6创建数据库表创建数据库表为了保存学生信息、课程信息、学生选课信息、登录信息、用户权限信息,数据库设计了学生信息表,课程信息表,学生选课信息表,登录信息表和用户权限信息表

10、。这些表使得用户对数据的增删改变得非常方便,数据的冗余不是十分明显。数据库中的学生信息表结构如表 3-1 所示:表 3-1 学生信息表(stu_inform)字段名数据类型长度范围是否为空字段说明学号Char8否姓名Nvarchar是性别Char2是班级Nvarchar是出生年月日datetime是是否已选课char是数据库中的课程信息表结构如表 3-2 所示:表 3-2 课程信息表(course_inform)字段名数据类型长度范围是否为空字段说明课程代号Char10否课程名称Nvarchar是授课教师Nvarchar是教师Nvarchar是剩余名额Char 3是上课时间Char20是学分I

11、nt是数据库中的学生选课信息表如表 3-3 所示:表 3-3 学生选课信息表(stu_select)字段名数据类型长度范围是否为空字段说明学号Char8否课程代号Char10否学期Char6是课程成绩Int是数据库中的登录信息如表 3-4 所示:表 3-4 登录信息表(stu_login)字段名数据类型长度范围是否为空字段说明学号Char8否用户名Nvarchar是密码Nvarchar是权限代号Char3是数据库中的权限信息如表 3-5 所示:表 3-5 权限信息表(user_gl)字段名数据类型长度范围是否为空字段说明权限名称Char10是权限代号Char3否四、系 统 调 试 出 现 的

12、问 题 及 解 决 情 况课程查询不成功改正后代码:改正后代码:/dw_1.setfilter(“) if sle_1.text= “ or sle_1.text =“请在此输入查询内容“ then messagebox(“错误!“,“请输入查询内容!“) sle_1.event getfocus( )else if rb_1.checked=true then /精确查找 choose case ddlb_1.text case “课程代号“ dw_1.setfilter(“kcdh=“+sle_1.text+“) /dw_1.setfilter(“kcdh=+sle_1.text+“) c

13、ase “课程名称“ dw_1.setfilter(“kcmc=“+sle_1.text+“) case “授课教师“ dw_1.setfilter(“skjs=“+sle_1.text+“) case “上课时间“ dw_1.setfilter(“sksj=“+sle_1.text+“) end choose else /模糊查询 choose case ddlb_1.text case “课程代号“ dw_1.setfilter(“kcdh like“+“%“+sle_1.text+“%“) case “课程名称“ dw_1.setfilter(“kcmc like“+“%“+sle_1.

14、text+“%“) case “授课教师“ dw_1.setfilter(“skjs like“+“%“+sle_1.text+“%“) case “上课时间“ dw_1.setfilter(“sksj like“+“%“+sle_1.text+“%“) end choose end if end if /检索数据 dw_1.retrieve()错误原因:错误原因:Setfilter 语句中少加了个引号五、系统运行报告(测试的结果) 登录窗口按钮代码:string username,password/检索用户名和密码记录SELECT stu_login.xh, stu_login.yhm, s

15、tu_login.mm, stu_login.qxdhINTO :stu_no, :username, :password, :gl_no FROM stu_login WHERE stu_login.yhm = :sle_1.text ; /判断用户输入的用户名是否正确if sle_1.text=“ or sle_2.text=“ thenmessagebox(“错误!“,“用户名或密码不能为空!“,exclamation!,ok!,2)elseif username=sle_1.text and password=sle_2.text thenopen(w_main_1)close(w_login)elsemessagebox(“错误!“,“用户名或密码错误,请重新输入!“,exclamation!,ok!,2)end ifend if 查询窗口按钮代码:if sle_1.text= “ or sle_1.text =“请在此输入查询内容“ thenmessagebox(“错误!“,“请输入查询内容!“)sle_1.event getfocus( )elseif rb_1.checked=true then/精确查找choose case ddlb_1.textcase “课程代号“dw_1.setfilter(“kcdh=“+sle_1.text+“)/dw_1.set

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号