在编写图书馆系统中 查询用户名的输入t.SetKey; //准备查询
t.FieldByName('姓名').AsString:=auserName;
if not(t.GotoKey) then
begin
MessageDlg('用户名'+ausername+'错误',mterror,[mbok],0);
result:=-1;
Exit;
end
系统老是跳出用户名错误 即使我把数据库表上的数据一个个对着写进去还是错误
开始我怀疑 数据库连接是否 有误
经过调试
1,将edit1.text:=t.FieldByName('姓名').AsString; 出现的是数据库中的第一个名字sa//排除数据库连接错误
在调试中输入将ausername的值赋予sa
但是为什么t.gotokey总是找不到 返回false 郁闷啊! 请高手解救啊
t.FieldByName('姓名').AsString:=auserName;
if not(t.GotoKey) then
begin
MessageDlg('用户名'+ausername+'错误',mterror,[mbok],0);
result:=-1;
Exit;
end
系统老是跳出用户名错误 即使我把数据库表上的数据一个个对着写进去还是错误
开始我怀疑 数据库连接是否 有误
经过调试
1,将edit1.text:=t.FieldByName('姓名').AsString; 出现的是数据库中的第一个名字sa//排除数据库连接错误
在调试中输入将ausername的值赋予sa
但是为什么t.gotokey总是找不到 返回false 郁闷啊! 请高手解救啊
纳闷啊 高手们 救俺啊
楼主是用的SQL查询语句??
IndexFieldName = '姓名';
t.SetKey; //准备查询
t.FieldByName('姓名').AsString:=auserName;
if not(t.GotoKey) then
begin
MessageDlg('用户名'+ausername+'错误',mterror,[mbok],0);
result:=-1;
Exit;
end
最好不用gotokey, 用locate或sql查询好一些
好象 setkey 設置的字段必須為索引, 也就是說 姓名 這個 field 必須定義為 index 才可以,
要不然, 是會返回 false的你檢查下是不是這個原因