在AfterScroll里写 if Adoquery1.UpdateStatus<>usUnmodified then ShowMessage('数据或修改或插入或删除');
在窗体关闭事件《好像是closequery吧》中加楼上的判断就OK了
那这样的话,我关闭窗口时怎么才能知道这个窗口中的数据是否被保存呢? >>>> if adoquery1.state in [dsinsert,dsedit] then adoquery1.updatebatch
可是把ADO数据集的LOCKTYPE设置为:ltBatchOptimtic, if not (ADOQuery1.State in [dsBrowse]) then showmessage('数据被修改') 可是我换行后,其实还没有被保存到数据库中,它的状态就改为Browse了, 关闭窗口时就不会提示了"数据被修改"。这是怎么回事
if Adoquery1.UpdateStatus<>usUnmodified then
ShowMessage('数据或修改或插入或删除');
>>>>
if adoquery1.state in [dsinsert,dsedit] then
adoquery1.updatebatch
if not (ADOQuery1.State in [dsBrowse]) then
showmessage('数据被修改') 可是我换行后,其实还没有被保存到数据库中,它的状态就改为Browse了,
关闭窗口时就不会提示了"数据被修改"。这是怎么回事
就像Clientdataset组件一样。
编辑保存时加1.
提交保存到数据库后清0.