我用adoquary,DBGrid1实现数据的显示与修改,但当我按下‘保存’时,怎样才能实现数据的保存,就是当里面的数据更改过,与数据库中的表不同,怎样保存,因为有些更改是更新,有些是新加的,最好有代码,谢谢了!

解决方案 »

  1.   

    分别进行处理,判断数据库中是否存在,如果存在就update,如果不存在就insert
      

  2.   

    不需要这个操作,
    只要在DBGrid中修改、添加完,焦点离开所在行之后
    所做的操作就自动提交到数据库了,不用另外处理。
      

  3.   

    焦点未离开时,按“ESC”就可取消
      

  4.   

    adoquery.post;  //这句就是保存更新adoquery.cancel; //这句是取消更新如果就是在客户端做的就用 adoquery.clientUpdate;  来保存更新,至于是updateclient还是clientupdate我记不太清了,自己查一个方法列表吧,只有里面有update的应该就是
      

  5.   

    把数据集的locktype设成ltBatchOptimistic,然后在保存按钮上UpdateBatch(arall);
    如果有删除的话也要加上UpdateBatch(arall);不能用post;