K KeepObject Unregistered / Unconfirmed GUEST, unregistred user! 2010-03-04 #1 Delphi中使用ADOQery数据源控件,ADOQuery连接到一个DBGrid,用户直接在DBGrid中编辑记录,修改提交后我想在ADOQuery的BeforeEdit事件中判断用户在DBGrid中修改了哪个字段的值,然后根据修改的字段进行相应的操作。请问BeforeEdit事件中怎样判断?
Delphi中使用ADOQery数据源控件,ADOQuery连接到一个DBGrid,用户直接在DBGrid中编辑记录,修改提交后我想在ADOQuery的BeforeEdit事件中判断用户在DBGrid中修改了哪个字段的值,然后根据修改的字段进行相应的操作。请问BeforeEdit事件中怎样判断?
X xianjun Unregistered / Unconfirmed GUEST, unregistred user! 2010-03-04 #2 应该使用cache update模式,apply update的时候可以自己写脚本看改了哪些字段,怎么处理等等。
K KeepObject Unregistered / Unconfirmed GUEST, unregistred user! 2010-03-04 #3 这样太麻烦,如果DBGrid数据太多,字段太多,那遍历起来很耗时。
X xianjun Unregistered / Unconfirmed GUEST, unregistred user! 2010-03-05 #4 数据都在内存中,遍历起来很快的。不然你就按你的想法,在beforeEdit中记录原值,在afterEdit中记录修改后的值,比较一下然后记录日志。
Z zbdzjx Unregistered / Unconfirmed GUEST, unregistred user! 2010-03-05 #5 应该不用遍历吧,指针指着当前记录,应该可以取到当前记录,只是判断当前记录的改动就可以了。