//提取密码置入lPwd中。
select pwd
into :lPwd
from t_teachers where teacherID=:loginUser;
if SQLCA.SQLCode=100 then
flag=1
elseif loginUserPsd<>lPwd then
flag=2
end if
Case 3 //学生
select pwd
into:lPwd
from t_students where StudentID=:loginUser;
if SQLCA.SQLCode=100 then
flag=1
elseif loginUserPsd<>lPwd then
flag=2
end if
End Choose
return flag //返回标示
4.5.2成绩查询窗体说明
1、窗体打开函数,主要是将专业下拉框初始化。具体函数代码与说明如下:
dw_1.SetTransObject(SQLCA)
dw_1.retrieve()
dw_1.setFocus()
ddlb_3.SelectItem(7) //显示全部成绩
//声明一个用于提取专业的游标
String StrClass
declare myCursor cursor for
select distinct SpecialityName from t_Speciality;
open myCursor; //打开游标
fetch myCursor into :StrClass; //提取数据
//初始化专业下拉框
do while sqlca.sqlcode=0
ddlb_1.addItem(StrClass) //填充专业下拉框
fetch myCursor into :StrClass;
loop
close myCursor; //关闭游标
2、专业下拉框的selectionChanged事件,根据专业初始化班级下拉框,具体函数代码与说明如下:
ddlb_2.reset(); //清除班级下拉框中的内容
String StrClass,strN //班级、专业
strN=ddlb_1.text //取得专业
//定义一个根据专业提取班级的游标
declare myCursor cursor for
SELECT t_class.classname
FROM t_class, t_speciality
WHERE ( t_speciality.specialityid = t_class.specialityid and specialityname=:strN);
open myCursor; //打开游标
fetch myCursor into :StrClass; //提取数据
//初始化班级下拉框
do while sqlca.sqlcode=0
ddlb_2.addItem(StrClass) //填充班级下拉框
fetch myCursor into :StrClass;
loop
close myCursor; //关闭游标
3、学生信息中的rowFocusChanged事件,根据所选学生的变化,成绩信息也随之变化,具体函数代码与说明如下:
stuid = this.object.data[currentRow, 1] //取得学生学号
//更新学生成绩信息
dw_2.SetTransObject(SQLCA)
IF dw_2.Retrieve(stuid) = -1 THEN //更新学生信息的检索参数stuid。
MessageBox("更新","更新失败!")
END IF
结束语
通过这次文档设计,对软件的设计与开发过程有了更深地了解,也进一步清楚了软件工程开发的几个阶段。当然,对学生管理信息系统也有了初步的认识,并对数据库的建立、SQL语言的应用及PowerBuilder有了进一步清楚的认识。这三个多月的设计和开发,也使我增强了团队精神,对我以后的编程也提供了不少经验,对自身的发展以及提高自身素质也大有好处。尽管软件其功能基本符合要求,但由于文档设计时间较短,所以该系统还有许多不尽如人意的地方,比如用户界面不够美观,功能实现的不够好等多方面问题,这些都有待进一步改善。
谢 辞
通过本次文档设计,我学到了很多东西,对PowerBuilder、SQL Server等软件的使用更加熟悉。特别感谢我的导师许百成,他严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他循循善诱的教导和不拘一格的思路给予我无尽的启迪。 每个实验细节和每个数据,都离不开他的细心指导。另外,感谢系统开发过程中同组的同学,也给与我不少帮助,共同完成了系统的设计与开发,在这里一并感谢。
参考文献
[1] 袁方、郗亚辉、陈昊、杨成.数据库应用系统设计.成都:电子科技大学出版社,185~218
[2] 金林樵、唐军芳.SQL Server数据库应用开发技术.北京:机械工业出版社,106~130
[3] 刘云州、于德壹.PowerBuilder8.0数据窗口使用编程技术.北京:中国水利水电出版社,57~107
[4] 夏邦贵、郭胜.PowerBuilder数据库开发入门与范例解析.北京:机械工业出版社,54~108
[5] 丁宝康、李大学.数据库原理