微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

关于ADO 连接 SQLServer的事务处理

 

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] 举报,一经查实,本站将立刻删除。

相关推荐