我来拿分喽!
在插入之前,先进行判断
with Query1 do
begin
  Close;
  Sql.Clear;
  Sql.Add('select * from table2 where Id=:Id');
  parambyname('Id').AsString:=Edit1.Text;
  Open;
  
  if Recordcount>0 then
  begin  
    Messagedlg('记录重复!',mtwarning,[mbOK],0);
    Exit;
  end;
end;