qryTemp2
是TADOQuery
如果像这样的代码,将调用回滚并且不会进行插入,但我认为,如果数据库在云上,则需要更多时间。
qryTemp2.Connection.BeginTrans;
try
qryTemp2.Close;
qryTemp2.SQL.Text := 'insert sql1,this sql is good';
qryTemp2.ExecSQL;
qryTemp2.Close;
qryTemp2.SQL.Text :='insert sql2,this sql will raise a exception';
qryTemp2.ExecSQL;
qryTemp2.Connection.CommitTrans;
except
on e:Exception do
begin
qryTemp2.Connection.RollbackTrans;
Exit;
end;
end;
如果我这样写,则会插入sql1并且不会调用回滚。 我可以做一些事情来回滚吗?
qryTemp2.Connection.BeginTrans;
try
qryTemp2.Close;
qryTemp2.SQL.Text := 'insert sql1,this sql is good'+#13#10+
'insert sql2,this sql will raise a exception';
qryTemp2.ExecSQL;
qryTemp2.Connection.CommitTrans;
except
on e:Exception do
begin
qryTemp2.Connection.RollbackTrans;
Exit;
end;
end;