procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin adoconnection1.BeginTrans; try for i:=0 to 10 do begin adoquery1.Close; adoquery1.SQL.clear; adoquery1.SQL.add('insert into table1 values(:c1,:c2)'); adoquery1.Parameters.ParamByName('c1').value:=i; adoquery1.Parameters.ParamByName('c2').value:=i; adoquery1.ExecSQL; end; adoconnection1.CommitTrans; except adoconnection1.RollbackTrans; end; end;
to zdcnow(磁效应)能不能说一下为什么在程序中要用到 for i:=0 to 10 do 这有什么用??
to qhf503(qq) : 事务可以一次性操作多条记录,这是给你一个例子看看而已,我一次性增加了11条记录到数据库中。你把它去掉也可以的,呵呵。
for i:=0 to 10 do 只还过是指定往数据库中插入11条记录而已!在你的程序中应该将该段代码改成你自己的数据库操作代码!!
var
i:integer;
begin
adoconnection1.BeginTrans;
try
for i:=0 to 10 do
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.add('insert into table1 values(:c1,:c2)');
adoquery1.Parameters.ParamByName('c1').value:=i;
adoquery1.Parameters.ParamByName('c2').value:=i;
adoquery1.ExecSQL;
end;
adoconnection1.CommitTrans;
except
adoconnection1.RollbackTrans;
end;
end;
for i:=0 to 10 do
这有什么用??
事务可以一次性操作多条记录,这是给你一个例子看看而已,我一次性增加了11条记录到数据库中。你把它去掉也可以的,呵呵。
Q.connection:=Adoconnection;然后:
adoconnection1.BeginTrans;
try
Q的操作...
exceptadoconnection1.RollbackTrans;
end;adoconnection1.CommitTrans;另外。不用Adoconnection. Adoquery.connection下面也有时务的开始,回滚,和提交操作,不知道是否可行?