报刊订阅管理系统
结合PowerBuilder进行数据库应用开发的特点,设计过程可按如下步骤进行: (1)打开PowerBuilder,新建一个工作区,取名为magazine; (2)新建一个Application,取名app,连接数据库,并将连接数据库代码复制到app中代码; 代码:
open(w_welcome)//打开欢迎窗口 //连接数据源
SQLCA.DBMS = \
SQLCA.AutoCommit = False
SQLCA.DBParm = \connect using sqlca;
if sqlca.sqlcode<>0 then messagebox(\错误\数据库连接错误,请检查后重试!\ return end if
close(w_welcome)//关闭欢迎窗口
open(w_login)//打开登录窗口(3)制作欢迎界面w_welcome;
(4)制作登录界面w_login;
确定按钮代码:
string id,password,getpassword id=trim(sle_1.text)
getpassword=trim(sle_2.text)
//用户名不能为空
if id=\ MessageBox(\系统提示\请输入用户名!\ return end if
//密码不能为空
if getpassword=\ MessageBox(\系统提示\请输入密码!\
return end if //管理员登陆
if rb_1.checked=true then select Aname,Apassword
into :gs_operator_id,:gs_password from administrator where Aname=:id;
if sqlca.sqlcode<>0 then
messagebox(\系统提示\无此管理员!\sle_2.text=\
sle_1.text=\ sle_1.setfocus() return end if
if getpassword<>trim(gs_password) then messagebox(\警告\口令错误!\
sle_2.text=\sle_2.setfocus() return
end if
//进入管理员管理界面 open(w_main) close(w_login)
//用户登录
elseif rb_2.checked=true then
select Uname,Upassword
into :gs_operator_id,:gs_password from consumer
where Uname=:id;
if sqlca.sqlcode<>0 then
messagebox(\系统提示\无此用户!\sle_2.text=\sle_1.text=\
sle_1.setfocus()
return end if
if getpassword<>trim(gs_password) then messagebox(\警告\口令错误!\
sle_2.text=\sle_2.setfocus()
return end if
gs_operator_id=id //进入用户管理界面 open(w_consumermain) close(w_login)
elseif rb_1.checked=false and rb_2.checked=false then messagebox(\系统提示\请选择用户类型!\ return end if
(5)制作注册界面w_enroll;
代码:
注册按钮:
//姓名,真实姓名,密码,重复密码,性别,部门号,联系电话,家庭住址,
string name,realname,password,copypassword,sex,number,phone,address,number1 string n//临时变量 //获得用户输入的信息 name=trim(sle_1.text)
password=trim(sle_2.text) copypassword=trim(sle_8.text) realname=trim(sle_4.text) if rb_1.checked=true then
sex=\男\
elseif rb_2.checked=true then sex=\女\end if
number=trim(sle_5.text) phone=trim(sle_6.text) address=trim(sle_7.text) //对信息进行检查
if name=\
MessageBox(\系统提示\对不起!请输入用户名!否则无法注册!\sle_1.setfocus()
return end if
select Uname into :n
from consumer
where Uname=:name;
if sqlca.sqlcode=0 then
MessageBox(\系统提示\对不起,此用户名已被注册!请另选一个试试!\
sle_1.text=\return
end if
if password=\ MessageBox(\系统提示\对不起!请输入登录密码!否则无法注册!\
sle_2.setfocus() return end if
if copypassword=\
MessageBox(\系统提示\对不起!请再次输入登录密码!否则无法注册!\sle_8.setfocus() return