检测修改SQL的重复记录值(0分)

  • 主题发起人 主题发起人 topdelphi
  • 开始时间 开始时间
T

topdelphi

Unregistered / Unconfirmed
GUEST, unregistred user!
我的SQL数据库有个USERID字段,如何检测例如输入编号为1之后,
再输入就弹出提示不能输入重复值提示出来,不是弹出SQL系统报错信息出来,
我的程序如下,但是我在调用的时候出错了,说需要一个参数,请问是什么,或者大家还有没
有更好的方法啊:
function tform1.isExistUserID (aID:Integer):Boolean;
var
qry_LookUpID:TADOQuery;
begin
form1.AD.SQL.Clear;
form1.ad.SQL.Add('exec users1 ');//这里我调用了存储过程显示表
form1.ad.SQL.Add('Where User_IDs='+IntToStr(aID));
form1.ad.Open;

if (form1.adoquery2.state in [dsEdit])
Result:=(form1.ad.RecordCount>1) and (form1.ad.FieldByName('User_IDs').AsInteger<>aID)
else if (form1.adoquery2.state in [dsInsert]) then
Result:=(form1.ad.RecordCount>0);
form1.ad.Close;
form1.ad.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
adoquery2.Insert ;
isExistUserID(aid:integer);//这是我调用出错的部份,请教我在这里的写法调用可以实现我上面的检测功能吗
adoquery2.FieldByName('user_ids').AsString :=edit1.Text;
adoquery2.Post;
END;
 
后退
顶部