当前位置: 代码迷 >> PB >> 为啥跟踪出来的SQL是select count ( *) from users where USER_ID =' ' AND PASSWORD =' '
  详细解决方案

为啥跟踪出来的SQL是select count ( *) from users where USER_ID =' ' AND PASSWORD =' '

热度:164   发布时间:2016-04-29 05:35:34.0
为什么跟踪出来的SQL是select count ( *) from users where USER_ID =' ' AND PASSWORD =' '
如题,代码如下,刚接触PB,求大神解释!
int li_count
string ls_id
string ls_pwd

ls_id = sle_1.text
ls_pwd = sle_2.text

//messagebox("提示",ls_id)
//messagebox("提示",sle_1.text)

select count(*) into :li_count
from users
where USER_ID =:ls_id AND PASSWORD = :ls_pwd;

if li_count = 1 then 
close(w_about)
else
messagebox("提示","用户不存在")
sle_1.text = ""
sle_2.text = ""
sle_1.SetFocus()
end if
------解决方案--------------------
你从哪里跟踪到sql是你说的那个样子的?
------解决方案--------------------
当 ls_id 和 ls_pwd 都为 '' 时,跟踪出来就是你说的那个SQL 语句。
------解决方案--------------------
你认为应该跟踪出什么来?
------解决方案--------------------
断点看下
ls_id = sle_1.text
ls_pwd = sle_2.text
取到值没有
------解决方案--------------------
挺奇怪的问题,理论上应该不会发生这种情况啊,要不你试试:
where USER_ID =:sle_1.text AND PASSWORD = :sle_2.text;
------解决方案--------------------
引用:
Quote: 引用:

挺奇怪的问题,理论上应该不会发生这种情况啊,要不你试试:
where USER_ID =:sle_1.text AND PASSWORD = :sle_2.text;

不管用啊,能加我QQ1044617901吗?

你的问题太奇怪,估计加QQ也解决不了
  相关解决方案