请看这段代码有错误吗?with ADOTable1 do
  if FieldValues['name']=Edit1.Text then
     ShowMessage('已存在此记录!')
  else 
     next;使用ADOTable的情况下,我想添加记录前判断是否已存在该记录,用什么方法合适?

解决方案 »

  1.   

    可以从第一条记录循环比较到最后一条啊,上个程序没试,我经常用的是adoquery,但adotable应该一样,先first,然后在while一下,就可以了
      

  2.   

    你上面的代码是可以,但只能用于判断当前的记录是否与新插入的记录一样,用Locate方法要好一些
    例:
    if adotable1.Locate('name',[edit1.text],[]) then
    ShowMessage('name为:'+edit1.text+' 的记录已经存在!');
      

  3.   

    我这样写了一下,还是没有弹出消息框:
    with ADOTable1 do
    begin
      first;
      while not EOF do
        if FieldValues['name']=Edit1.Text then
           ShowMessage('已存在此记录!')
        else 
           next
    end;