不好意思,我刚学delphi,向各位请教一个简单的问题,我做一个登录窗口,用了adoquery组件,它的sql属性我写了select * from users
确定按钮代码如下
implementation
uses unit2;
{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);var strid,strpwd:string;
begin
strid:=edit1.Text;
strpwd:=edit2.text;
begin
with adoquery1 do
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add( 'select * from users where id=:strid and pwd=:strpwd');
ADOQuery1.open;
if ADOQuery1.recordcount=0 then
begin
showmessage('密码错误');
end
else
begin
form2.show;
self.hide;
end;
end;
end;
end.
老是提示密码错误,我猜想应该是sql语句那里有问题,所以我把where语句删掉试了一下,就可以了,请教一下各位是哪里出问题呀,adoquery组件的sql语句有没有问题呀,希望大家帮帮我这个新手
确定按钮代码如下
implementation
uses unit2;
{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);var strid,strpwd:string;
begin
strid:=edit1.Text;
strpwd:=edit2.text;
begin
with adoquery1 do
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add( 'select * from users where id=:strid and pwd=:strpwd');
ADOQuery1.open;
if ADOQuery1.recordcount=0 then
begin
showmessage('密码错误');
end
else
begin
form2.show;
self.hide;
end;
end;
end;
end.
老是提示密码错误,我猜想应该是sql语句那里有问题,所以我把where语句删掉试了一下,就可以了,请教一下各位是哪里出问题呀,adoquery组件的sql语句有没有问题呀,希望大家帮帮我这个新手
解决方案 »
- IdHttp的Get方法报"HTTP/1.1 404 Bad Request"错
- 没有安装Delphi6.0的情况下如何使用F1Book控件?
- 怎样用query新增数据?我做的不行啊,请内看:
- 我们都是微软的奴隶
- 请问delphi里面有没有define语句,就象c语言一样的
- 怎样在一个project中引用另一个projict中的窗体?????
- 关于划线
- 如何更改IE的代理设置?
- 请问在那里有介绍API函数功能的大量详细的资料,最好是中文的,
- delphi中怎样通过ADO和MS Access相连,需要设置ODBC吗?具体步骤是怎样的?拜托各位大虾?谢谢!!!
- 请问,在delphi 中关于向数据库中增加记录的问题?
- 在delphi中如何解决空格的问题。。。。烦死 了。。。。
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add( 'select * from users where id=:strid and pwd=:strpwd');
ADOQuery1.open;
if ADOQuery1.recordcount=0 then
//既然用了with adoquery1 do,到下面end之前的代码里就不用再写adoquery1.close;直接close;就可以了;
//此处strid和strpwd被当作参数,需要在执行语句前赋值;可以用下面的方法赋值;
adoquery1.ParamByName('strid').asString := edit1.Text;
adoquery1.ParamByName('strpwd').AsString := edit2.text;
要不改成
ADOQuery1.sql.add('select * from users where id=:strid and pwd= '''+strpwd+''' ');
undeclared identifier:'parambyname'
missing operator semicolon
都是在adoquery1.ParamByName('strid').asString := edit1.Text;
adoquery1.ParamByName('strpwd').AsString := edit2.text; 错的,是不是要在哪里先定义参数呀,各位莫怪,我实在是初学,书上又找不到答案,只能求助各位
form2.show;
Form1.close;
ado控件应该这样,四楼的少写了parameters呵