主题:我的关于权限问题
舞雾wuwu
[专家分:0] 发布于 2007-06-07 12:09:00
我做的权限的程序
procedure TForm1.Button5Click(Sender: TObject);
var
a:string;
begin
a:=Edit5.Text;
query1.Close;
query1.ParamByName('Manageno').Value:=a;
query1.Open;
if query1.Fields[0].Value =null then
begin
showmessage ('错误的用户名!');
exit;
end;
if query1.Fields[2].Value = Edit6.Text then
Form6.Show
else
begin
showmessage ('密码不正确');
exit;
end;
end;
然后它说Query1.parameter'mamageno'is not found,可是我建的表里是有manageno的啊.请问为什么会错呢?????
谢谢啊
end.
回复列表 (共10个回复)
沙发
jianfeihua [专家分:780] 发布于 2007-06-07 20:01:00
是参数名写错了
板凳
舞雾wuwu [专家分:0] 发布于 2007-06-07 22:39:00
那个a吗?哪里错了啊??
3 楼
hbchen [专家分:0] 发布于 2007-06-08 16:00:00
你没制定表名!!! sql写对了没?
4 楼
舞雾wuwu [专家分:0] 发布于 2007-06-08 22:53:00
SQL语句是:
SELECT Mmima FROM manage where Manageno=':a';
manage 是表名啊.
Mmima 是密码的意思.有问题的吗?
5 楼
舞雾wuwu [专家分:0] 发布于 2007-06-08 22:55:00
那条语句是写在QUERY1的SQL属性里的
6 楼
dodolon [专家分:400] 发布于 2007-06-09 12:19:00
SELECT Mmima FROM manage where Manageno=:a; 注意参数变量不能有''。
query1.ParamByName('Manageno').Value:=a;前加一行:
query1.ParamByName('Manageno').DataType:=ftString;
7 楼
舞雾wuwu [专家分:0] 发布于 2007-06-10 22:41:00
还是不行啊
8 楼
wpy020327 [专家分:0] 发布于 2007-06-11 20:31:00
改成select * from ....就可以啦。
9 楼
舞雾wuwu [专家分:0] 发布于 2007-06-11 22:33:00
谢谢了,可惜还是没用
10 楼
dodolon [专家分:400] 发布于 2007-06-12 13:43:00
“Query1.parameter'mamageno'is not found”说明参数的名称应该是“mamageno”。
按下面写:
SELECT Mmima FROM manage where Manageno=:Manageno; //“:”后是参数名
...
a:=Edit5.Text;
query1.ParamByName('Manageno').DataType:=ftString;
query1.ParamByName('Manageno').Value:=a;
如果按你原来的SQL语句“SELECT Mmima FROM manage where Manageno=:a;”,参数名应该是“a”,应该如下写:
...
a:=Edit5.Text;
query1.ParamByName('a').DataType:=ftString;
query1.ParamByName('a').Value:=a;
这里的变量a与参数a不会有影响。
我来回复