登陆窗体

zhangjiangbochina 2003-08-18 06:27:01
char pass_n
// Profile Pass
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Connectstring='DSN=pass'"
connect;
select into :pass_n password from "np" where string(sle_1.text)=select "name" from "np" ;
if pass_n=sle_2.text then
messagebox('ok','your are good')
else
messagebox('bad','bad')
end if
*************************************
这是我做的:
其中的password 及 name为字段名,pass为数据库的名.
我的思路:
1.是查找到其中的sle_1.text中(输入的用户名)与数据库的name相同的项,再
把密码传给变量pass_n,
2.再判断pass_n(即数据库中的这个用户名的密码)是否与sle_2.text(输入的密码)
相同.
问题:老是提示select那一条语法错误.
帮忙,谢了.
...全文
63 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2003-08-20
  • 打赏
  • 举报
回复
用string 可以匹配啊
xiaoxuw 2003-08-20
  • 打赏
  • 举报
回复
要不要加密呀??
不加密比较好做!!
119119 2003-08-20
  • 打赏
  • 举报
回复
同上。
zhangjiangbochina 2003-08-19
  • 打赏
  • 举报
回复
好的,问题解决了,但是出了一个小问题,就是我的np表的name 与password 字段的类型为char.
所以表是的值如:
name password
1 1
2 2
china china
前两个正确,后一个不正确.我想是类型不匹配.上面的为string ls_name与这不匹配吧.
请教一下如何设置表的类型及程序中的变量的类型.
谢谢了.
fulongbiao 2003-08-19
  • 打赏
  • 举报
回复
开始用PB时都会碰到此类小麻烦,以后会更好的!恭喜楼主
freeliu 2003-08-18
  • 打赏
  • 举报
回复
string ls_name
ls_name = sle_1.text
select password into :pass_n from "np" where "name" = :ls_name;
chrisfy 2003-08-18
  • 打赏
  • 举报
回复
char pass_n
string ls_name
// Profile Pass
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Connectstring='DSN=pass'"
connect;
ls_name = sle_1.text
select password into :pass_n from "np" where name = :ls_name;
if pass_n =sle_2.text then
messagebox('ok','your are good')
else
messagebox('bad','bad')
end if
iwithyou 2003-08-18
  • 打赏
  • 举报
回复
ls_st = string(sle_1.text)
select ? into 变量 from table where ls_st in (select "name" from "np");

1,072

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧