PB学生选课管理系统.docx
- 文档编号:4815270
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:10
- 大小:166.44KB
PB学生选课管理系统.docx
《PB学生选课管理系统.docx》由会员分享,可在线阅读,更多相关《PB学生选课管理系统.docx(10页珍藏版)》请在冰豆网上搜索。
PB学生选课管理系统
PB学生选课管理系统
课程设计说明书NO.1
学生选课管理系统
1、课程设计的目的
通过本次课程设计,熟悉上机实践操作,熟练掌握数据库的设计、窗口的设计、窗口与数据库的连接,数据定义,数据操纵,数据控制,以及PowerBuilder程序编写,基本实现学生选课的查询,修改,添加删除~并对PowerBuilder的各种功能有进一步的了解,为更进一步深入的学习奠定基础,并在实践中提高的实际应用能力,为以后的学习和工作提供方便。
2、设计方案论证
2.1需求分析
现代的社会是信息化的社会,信息无所不在。
在生产领域、流通领域、各个部门每天都和信息打交道,如何处理如此多的信息成为了一个重要的课题。
学生在学期开始选课是教学活动中的一个重要环节,该环节如果能管理好,它不仅能加快学生的选课速度,也提高了整个教学活动的效率。
大学一般都有上千名学生,每学期开始学生都要选课,因而产生了大量的课程信息。
考虑到用户使用的方便和处理的信息量系统要完成录入,保存,查询,修改和删除课程信息的各种过程,能打印出课程信息表。
所以系统的基本体系结构采用C/S模式2.2系统功能模块图
学生选课实现学生选课的管理,包括学生管理,课程管理,选课管理,数据分析,系统维护等。
沈阳大学
课程设计说明书NO.2
学生选课管理系统
课程查询选课生成课表修改密码退出
图1系统功能图
3.设计结果分析
3.1创建数据库
表1学生信息结构
字段名类型宽度小数位数
学生编号字符型10
姓名字符型10
性别字符型2
出生日期日期型8
专业字符型10
表2课程信息结构
字段名类型宽度小数位数课程号字符型10
课程名字符型10
学分数值型10
表3课程信息结构
字段名类型宽度小数位数
用户名字符型10
密码字符型10
沈阳大学
课程设计说明书NO.23.1创建主界面
创建主菜单主要是方便各种功能的实现,从而实现更好的完成学生选课,查看课程信息等功能。
如图2所示
图2主菜单
脚本代码:
在“课程查询”菜单项的m_main事件中编写代码:
open(w_kecheng)
在“选课”菜单项的m_main事件中编写代码:
open(w_xuanke)
在“生成课表”菜单项的m_main事件中编写代码:
open(w_kebiao)
在“修改密码”菜单项的m_main事件中编写代码:
open(w_password)
沈阳大学
课程设计说明书NO.33.2创建教室查询窗口
在主菜单窗口单击“教室查询”即可打开此窗口,使用者可以在此窗口实现对课程的查询。
下图3为“教室查询”的主界面。
图3教室查询窗口
脚本代码如下:
dw_1.setfilter("")
ifrb_1.checked=truethen//精确查询模式程序
choosecaseddlb_1.text
case"课号"
dw_1.setfilter("课号='"+sle_1.text+"'")
case"课名"
dw_1.setfilter("课名='"+sle_1.text+"'")
case"教师"
沈阳大学
课程设计说明书NO.4
dw_1.setfilter("教师='"+sle_1.text+"'")
case"上课时间"
dw_1.setfilter("上课时间='"+sle_1.text+"'")endchoose
else//模糊查询模式程序
choosecaseddlb_1.text
case"课号"
dw_1.setfilter("课号like"+"'%"+sle_1.text+"%'")case"课名"
dw_1.setfilter("课名like"+"'%"+sle_1.text+"%'")case"教师"
dw_1.setfilter("教师like"+"'%"+sle_1.text+"%'")case"上课时间"
dw_1.setfilter("上课时间like"+"'%"+sle_1.text+"%'")endchoose
endif
dw_1.retrieve()//检索数据,将符合条件的数据显示在数据窗口中
intnumber
DELETEFROM"选课表"
WHERE("选课表"."学号"=:
stu_no)AND
("选课表"."课号"=:
sle_1.text)AND
("选课表"."学期"=:
sle_2.text)//得到当前该课程剩余名额
SELECT"课程表"."剩余名额"
INTO:
number
FROM"课程表"
WHERE"课程表"."课号"=:
sle_1.text;
沈阳大学
课程设计说明书NO.63.2创建课程表窗口
在主菜单窗口单击“生成课程表”即可打开此窗口,使用者可以在此窗口实现对课程的查询。
下图4为“课程表”的主界面。
图4课程表窗口
脚本代码:
dw_1.settransobject(sqlca)
dw_1.setfilter("选课表_学号='"+trim(stu_no)+"'and选课表_学期='"+trim(sle_1.text)+"'")
dw_1.retrieve()
//将课表按钮上文字清除,主要防止用户再次点击查看课表产生错误k11.text="";k21.text="";k31.text="";k41.text="";k51.text=""k12.text="";k22.text="";k32.text="";k42.text="";k52.text=""
沈阳大学
课程设计说明书NO.7
intn,m
stringtime,kecheng
//定义一个整型变量
n=dw_1.rowcount()
//将数据表总行数赋与n
//将课程名显示在课表中
form=1ton
time=dw_1.object.课程表_上课时间[m]
kecheng=dw_1.object.课程表_课名[m]
choosecasetime
case"k11"
ifk11.text=""then
k11.text=kecheng
else
k11.text=k11.text+"/"+kecheng
messagebox("提示","您的课程有冲突~",exclamation!
ok!
2)endif
3.3密码修改窗口
在主菜单窗口单击“密码修改”即可打开此窗口,使用者可以在此窗口实现对课程
的查询。
下图4为“密码修改”的主界面。
沈阳大学
课程设计说明书NO.10
图5密码修改窗口
脚本代码:
/定义两个变量
stringmima,usename
//数据库连接参数
//ProfileStudent
SQLCA.DBMS="ODBC"
SQLCA.AutoCommit=False
SQLCA.DBParm="Connectstring='DSN=student'"//连接数据库
connect;
//检索用户名和密码记录
SELECT"学生表"."用户名","学生表"."密码"INTO:
usename,:
mima
FROM"学生表"
WHERE"学生表"."用户名"=:
sle_1.text;
沈阳大学
课程设计说明书NO.113.4学生选课窗口
在主菜单窗口单击“学生选课”即可打开此窗口,使用者可以在此窗口实现对课程的查询。
下图4为“学生选课”的主界面。
图6学生选课窗口
脚本代码:
intnumber
stringkehao
SELECT"选课表"."课号"INTO:
kehao
FROM"选课表"
WHERE("选课表"."学号"=:
stu_no)AND
("选课表"."课号"=:
sle_1.text)AND
("选课表"."学期"=:
sle_2.text);
ifkehao=sle_1.textorsle_1.text=""orsle_2.text=""thenmessagebox("提示~","输入框不能为空或您已经选过了该课程~",exclamation!
ok!
2)
沈阳大学
课程设计说明书NO.12else
SELECT"课程表"."剩余名额"INTO:
number
FROM"课程表"
WHERE"课程表"."课号"=:
sle_1.text;
ifnumber>0then
//向选课表中添加新记录
INSERTINTO"选课表"("学号","课号","学期","得分")
3.5登录窗口
登录窗口为系统在运行前,对身份的一种验证,通过输入的信息和用户表进行对比,如果用户名和密码正确进入系统。
下图为“登录”窗口界面。
图7登录窗口
脚本代码:
//定义两个变量
stringpassword,usename//数据库连接参数//ProfileStudent
SQLCA.DBMS="ODBC"
SQLCA.AutoCommit=False
沈阳大学
课程设计说明书NO.13SQLCA.DBParm="Connectstring='DSN=student'"
//连接数据库
connect;
//检索用户名和密码记录
SELECT"学生表"."学号","学生表"."用户名","学生表"."密码"INTO:
stu_no,:
usename,:
password
FROM"学生表"
WHERE学生表.用户名=:
sle_1.text;
3.6运行结果展示
图8登录窗口
沈阳大学
课程设计说明书NO.14
图9系统主窗口
图10课程信息窗口
沈阳大学
课程设计说明书NO.15
图11选课窗口
沈阳大学
课程设计说明书NO.165、课程设计体会
随着信息技术的发展,办公自动化已成为社会发展的主要趋势,学生选课管理因其劳动的复杂性已经无法适应手工操作,所以应用先进的计算机技术对学生选课进行管理是势在必行的,因此本文采用目前流行的数据库开发工具之一的PowerBuilder设计了一个小型的学生选课系统,并对设计结果进行了一定的总结。
(1)学生选课管理因为其日常事务比较繁琐,所以在设计数据库表之前一定要对系统的设计有一个整体的认识,对学生信息和课程信息进行整理,设计好各功能模块的E-R图。
这样,在后期的设计时,会因前期工作处理的好而减少许多麻烦,为设计的顺利进行作好了铺垫。
(2)在设计各个功能模块时,要考虑和其他模块的联系,更要结合实际情况对窗口要放置的空间进行分析,尤其在编制代码是要充分考虑各种限制条件,对不同的身份规定其不同的登录权限。
(3)在使用学生选课系统后,提高了学生选课的准确性,信息能够准确无误的输入计算机并在数据库中存储起来。
按照规范设定标准代码,既保证了统计原始数据的准确性,又在分析统计时最大限度的减少了人为的影响,提高了工作效率。
通过本次的毕业设计,我们不仅掌握了设计的基本步骤,更重要的是学会了解科学的系统设计方法,加深了我们对软件开发的认识与理解。
6、参考文献
[1]东方人杰.PowerBuilder10.0入门与提高[M].北京:
清华大学出版社,2005
[2]崔魏.PowerBuilder8.0数据库应用系统[M].北京:
清华大学出版社,2002
[3]郭兴成。
PowerBuilder9.0使用教程[M]。
北京:
科学出版社,2008
[4]范立南,刘天惠。
SQLServer2000实用教程[M].北京:
清华大学出版社.2005.7
沈阳大学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PB 学生 选课 管理 系统