main.ADOConnection1.BeginTrans; //开始一个事务
……………………// 我的一些处理,包括几个查询和数据插入,更新,删除等
with ADOQuery1 do
begin
//…………update 1
try
ADOQuery1.open ;
Except
MessageDlg('无法打开数据库!',mtWarning, [mbYes], 0)
end; //try
//…………delete 2
try
ADOQuery1.open ;
Except
MessageDlg('无法打开数据库!', 0)
end; //try
//…………delete 3
try
ADOQuery1.open ;
Except
MessageDlg('无法打开数据库!', 0)
end; //try
end;
try
main.ADOConnection1.CommitTrans; //结束事务
except
main.ADOConnection1.RollbackTrans; //出错回滚
MessageDlg('读写数据库出错,记录已回滚!',mt@R_310_4045@ion, 0);
exit;
end;
如果我在 2 的地方出错了,结束事务这一块就不做了,当我第二次运行这段程序的时候就报错,说无法开始一个事务。我的写法错在哪里?应该怎么写? 问题点数:20、回复次数:3Top
1 楼blackfiles(一个和尚挑水喝)回复于 2002-04-25 16:36:53 得分 10
try ADOConnection.BeginTrans; //Delete 1; //Delete 2; ADOConnection.CommitTrans; except ADOConnection.RollbackTrans; end;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。