在delphi端构建数据库事务

来源:互联网 发布:代申请淘宝达人大v 编辑:程序博客网 时间:2024/06/05 01:53
//  ADODataSet_Main.LockType := ltBatchOptimistic;
//  ADODataSet_Detail.LockType := ltBatchOptimistic;
try
  ADOConnection1.beginTran; 
  ADODataSet_Main.Insert;
  // Insert Main data
  ADODataSet_Main.Post;
  for i := 0 to n begin
    ADODataSet_Detail.Insert;
    // Insert Detail data
    ADODataSet_Detail.Post;
  end;
  ADOConnection1.commitTran;
except
  ADOConnection1.RollBack;
end;

构建T_SQL事务
try //在第一个SQL语句前增加一句:
 adoqry1.sql.add('begin transaction');
A
 B
//成功,埸交事务。要注意对应关系,Commit总是各最近一次Begin Transaction相对应的。
 with adoqry1 do
 begin
sql.add('Commit');
execsql;
 end;
except //回滚
with adoqry1 do
 begin
sql.add('RollBack');
execsql;
end;
end;
原创粉丝点击