achers表
//提取密码置入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