本帖最后由 u011826367 于 2013-08-29 22:21:53 编辑

解决方案 »

  1.   

    把DataSource的AutoEdit属性设置为False。
      

  2.   

    那么就把ADOTable的LockType属性设置为ltBatchOptimistic,CursorLocation属性设置为ctStatic,把CacheSize属性值设置大些。在代码中保存时使用ADOTable.UpdateBatch。
      

  3.   

    “编辑数据后按回车或离开该条记录时就自动更新数据库”,这是必须的。你可以使用TClientDataset,在本地暂存所有的更新,只当你按钮保存时,才把TClientDataset的更新apply到TADOTable,最后更新到access;当然,也可以绕开TADOTable,直接apply到access。我说的这些,是delphi多层应用开发(叫做midas,或者datasnap)的最基本方式,此方式也可以应用于单机程序的开发。