用ADO连接时,如果想插入一条记录,首先检查一下数据主键是否存在,存在就处对话框,不存在,插入一条记录。如果想删除一条记录,应该怎么办?

解决方案 »

  1.   

    直接插入,根据异常判断是否主键冲突;删除?DELETE啊;
      

  2.   

    'delete from yourtable where primarykey=yourtext'
      

  3.   

    各位大侠,代码怎么写啊?我用FINDKEY不行啊!
      

  4.   

    //插入:
    with adoQuery1 do 
    begin
      sql.text := 'insert ......';
      try 
        execsql;
      except
        showMessage('主键冲突,无法插入!');
      end;
    end;//删除:直接用sql.text := 'delete ....where.......'
    //我就是这样做的。
      

  5.   

    谢谢楼上的各位,真心感谢!那么我如果用的是表呢?ADOTABLE是否也一样呢?
      

  6.   

    with adotable1 do
      begin
        adotable1.locate('keyfield',keyvalue,[loCaseInsensitive]);
        adotable1.delete;
      end;
    插入数据的过程,我认为在onposterror事件中处理异常比较好.