把moveby与vc方法改成locate方法先。
ADOTable1.post;多余.
哎,你是做什么的???写的不好。
你用断点调用试一下,出在哪句?

解决方案 »

  1.   

    没有呀,只用了ADOTABLE的连接向导
    CONNECTIONSTRING:=Provider=MSDASQL.1;Persist Security Info=False;Data Source=dBASE Files;
      

  2.   

    其它机子上都设DSN数据源了吗及数据源的正确性,看看ADO版是不是一样?
      

  3.   

    哈哈  mryes 没有写对哦if messagedlg('真的要删除当前记录'+ADOTable1.FieldByName('xm').asstring+'的数据  吗?',mtconfirmation,[mbyes,mbno],0)=mryes then   如果你能保证所有连接没有问题,那么提示:“缺少更新或刷新的基本表消息”?
       就可能是数据感应控件与实际的DB存在一些实时刷新中断...   请试一下改 DataSource1.Enabled:=false; DataSource1.Enabled:=true;
       为用adotable来控制它的刷新  :-)   
      

  4.   

    DBGrid上是可以看到数据的,只要删除、修改或增时才会出错
      

  5.   

    为什么要这么写?
    if  messagedlg在adotable.beforedelete下写。
    speedbutton为他赋个datasetaction为delete或没有数据时让他的enabled=false
    没有必要使moveby
      

  6.   

    ADOTable1.applyupdates(0);
    备注:ADOTable在此用post不会保存到数据库中。
      

  7.   

    moveby 只是删除后,自动修改记录序号值ADOTable1['xh'],保持连续,然后用moveby回到删除时的位置