)假如在beforepost事件中发现编辑或者增加记录的时候捕获错误 则adotable1.cancel,exit
但是出现一个问题虽然用户编辑错误的数据不会返回到数据库表中,但是表格中错误数据仍然存在,如何把这些错误数据返回原来的数据

解决方案 »

  1.   

    不行 dbgrid1.repaint我也试过
      

  2.   

    把数据源再刷新一下试试

    AdoQuery1.Requery;
      

  3.   

    试试commitupdate
        cancelupdate
      

  4.   

    procedure TForm1.DataSource1UpdateData(Sender: TObject);
    begin
    if adotable1.FieldByName('pc_comp').asstring='' then
      raise Exception.Create('电脑名称不能为空');
     Adotable1.Requery;
    end;
    还是不行 焦点一直在 假如我去掉  raise Exception.Create('电脑名称不能为空'); 则程序自动跳掉