我用lookup不知道速度如何,反正还是要历遍数据库,
procedure Tf_addadviser.Edit6Exit(Sender: TObject);
var name1:variant;
begin
dm.ADOTable2.Open;
name1:=dm.ADOTable2.Lookup('adviserid',edit6.Text,'name');
if VarIsNull(name1) then
edit8.SetFocus
else
showmessage('你所输入的编号已经存在,请检查数据!');
可以查主键的count
if query1.Active then query1.Active:=false;
with query1 do
begin
sql.Clear;
sql.Add('select count(*) as no_bh from dhd where bh='+QuotedStr(edit1.Text));
ExecSQL;
end;
query1.Active:=true;
if strtoint(query1.FieldByName('no_bh').AsString)=0 then showmessage('可以插入')
begin
table1.Active:=true;
table1.Locate('bh',edit1.Text,[]);
table1.Edit;
end;
end;