with table1 do begin
setkey;
findfield('rq').AsString:=dbedit1.Text;
findfield('xianti').AsString:=dbcombobox1.Text;
findfield('jixing').AsString:=dbedit2.Text;
if gotokey then
begin
showmessage('数据输入重复,重新输入');
exit;
end;
为什么输入两组同样的数据后不提示数据输入重复呢????
setkey;
findfield('rq').AsString:=dbedit1.Text;
findfield('xianti').AsString:=dbcombobox1.Text;
findfield('jixing').AsString:=dbedit2.Text;
if gotokey then
begin
showmessage('数据输入重复,重新输入');
exit;
end;
为什么输入两组同样的数据后不提示数据输入重复呢????
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from khda ');
adoquery1.SQL.Add(' where 客户名称='+quotedstr(edit2.Text));
adoquery1.open;
if adoquery1.RecordCount =1 then
begin
edit2.SetFocus ;
showmessage('客户名称已存在,请重新输入!');
exit;
end;你参考一下,。
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from khda ');
adoquery1.SQL.Add(' where 客户名称='+quotedstr(edit2.Text));
adoquery1.open;
while not isempty do
begin
edit2.SetFocus ;
showmessage('客户名称已存在,请重新输入!');
exit;
end;
with adoquery1 do
begin
close;
SQL.Clear;
adoquery1.SQL.Add('select * from khda ');
SQL.Add(' where 客户名称='+quotedstr(edit2.Text));
open;
while not isempty do
begin
edit2.SetFocus ;
showmessage('客户名称已存在,请重新输入!');
exit;
end;
end;