在使用ADOQuery删除数据时的处理
在使用ADOQuery删除数据时的,希望在他的事件BeforeDelete进行一些判断,符合要求的进行删除,不符合要求的终止这个删除行为,请问应该用什么语句呢?
还有个比较奇怪的现象也一起请教:DBGrid的Option里,dgConfirmDelete已经设置为False,为什么我每次删除数据时,都要出个对话框询问是否删除呢?
Abort这个不得。
[解决办法]
BeforeDelete中写
if A=B then abort;//这个方法在我这测试可行啊,无论是单选还是多选都可以
至于第二个问题,建议您自己查一下是否在Delete前写了提示语句,又或者是在程序用动态设置了ADOQuery的Option,如果还没解决的话,自己新拖一个ADOQuery,对比一下默认设置跟‘出错设置’的不同就知道了
[解决办法]
if A=true then
begin
raise Exception.Create('此条记录不允许删除!');
abort;
end;
[解决办法]
1、不要在BeforeDelete事件写代码,新建一个删除按纽的click事件中写就不存在这些问题。
if ..... then adoquery1.delete;
2、我在DBGrid编辑数据时尽量不用它的插入功能和删除功能,只用它的编辑功能,因为插入和删除有时需要一些操作,还是用两个按纽来实现。
[解决办法]
干吗要死纠着BeforeDelete这个事件呢
你adoquery1.delete;前自己判断不就OK了