用ADOQuery读取记录 select * from 表  然后用DBGrid显示出来,我在DBGrid中修改后,DBGrid有改,可是数据库中没有发生变化。有没有办法让数据中的数据也发生变化呢?

解决方案 »

  1.   

    你可能用了缓冲更新,需要执行 ADOQuery.UpdateBatch;如果不是缓冲更新,则当你在 DBGrid 中修改记录后移动到另一条记录后,会立即更新数据库
      

  2.   

    看看你的adoQuery的LockType是不是ltBatchOptimistic? 是的话就是用UpdateBatch来更新数据库了,是不是写了事务?可以移动ADOQuery的数据记录指针看看
      

  3.   

    在改动后按下键然后数据就保存上了,是在不行在程序中post一下
      

  4.   

    adoQuery的LockType是不是ltBatchOptimistic
    这样的化 就要updatebatch 
    这是缓存的机制的?