adoquery采用批量更新方式.有没有什么方法可以得知dataset记录没有更新到数据库?

解决方案 »

  1.   

    adoquery1.locktype:=ltBatchOptimistic;
    修改一通后用
    adoquery1.updatebatch;
    方法,数据就更新到数据库了。
    可以在此方法前或后作更新数据的提示.
      

  2.   

    我的意思是想在没有updatebatch的时候或updatebatch不成功时,窗口退出则提示存盘!!!
      

  3.   

    try
      adoquery1.updatebatch;
    except
      保存不成功代码
    end;
    ////////
    if adoquery1.Modifie then 数据集已经修改
    else  数据集未曾修改;
      

  4.   

    不行呀
    测试:
    我insert 了好多行后,调post
    然后退出.
    结果if adoquery1.modified then 没有反应.
      

  5.   

    如果属性locktype改为ltBatchOptimistic后,就只能用updatebatch了,不能用POST.
    adoquery1.modified是表示数据集打开后有没有修改(在内存中)
    adoquery1.updatebatch;是保存数据。
    你先
    if adoquery1.modified then (调用adoquery1.updatebatch;保存数据。)
    else (数据未改变,不用保存。adoquery1.close就行了)
      

  6.   

    如果属性locktype改为ltBatchOptimistic后表示数据集进行缓存操作。
    当adoquery1.modified 为true,
    adoquery1.updatebatch;后adoquery1.modified 又变为false了。