database1.StartTransaction;//开始一个事务
try
with query1 do //插入数据
begin
close;
sql.Clear;
sql.Add('insert TT values(:a,:b,:c,:d)');
parambyname('a').AsString:=trim(edit1.Text);
parambyname('b').AsString:=trim(edit2.Text);
parambyname('c').AsInteger:=strtoint(edit3.Text);
parambyname('d').AsString:=trim(edit4.Text);
open;
Execsql;
end;
database1.Commit;//提交事务
showmessage('提交事务成功');
clear;
except
end;
database1.Rollback;//事务回流
showmessage('系统出错');
end;就是通不过,显示系统出错?请各位高手指点一下?
try
with query1 do //插入数据
begin
close;
sql.Clear;
sql.Add('insert TT values(:a,:b,:c,:d)');
parambyname('a').AsString:=trim(edit1.Text);
parambyname('b').AsString:=trim(edit2.Text);
parambyname('c').AsInteger:=strtoint(edit3.Text);
parambyname('d').AsString:=trim(edit4.Text);
open;
Execsql;
end;
database1.Commit;//提交事务
showmessage('提交事务成功');
clear;
except
end;
database1.Rollback;//事务回流
showmessage('系统出错');
end;就是通不过,显示系统出错?请各位高手指点一下?
try
with query1 do //插入数据
begin
close;
sql.Clear;
sql.Add('insert TT values(:a,:b,:c,:d)');
parambyname('a').AsString:=trim(edit1.Text);
parambyname('b').AsString:=trim(edit2.Text);
parambyname('c').AsInteger:=strtoint(edit3.Text);
parambyname('d').AsString:=trim(edit4.Text);
open;
Execsql;
end;
database1.Commit;//提交事务
showmessage('提交事务成功');
clear;
except
showmessage('系统出错');
database1.Rollback;//事务回流
end;
end;
try
with query1 do //插入数据
begin
close;
sql.Clear;
sql.Add('insert TT values(:a,:b,:c,:d)');
Parameters.parambyname('a'.values := trim(edit1.Text);
Parameters.parambyname('b').values := trim(edit2.Text);
Parameters.parambyname('c').values := trim(edit3.Text);
Parameters.parambyname('d').values := trim(edit4.Text);
open; // 这里应该去掉,insert语句不能使用OPEN命令返回数据集
Execsql;
end;
database1.Commit;//提交事务
showmessage('提交事务成功');
clear;
except // 事务回流写在except之后
database1.Rollback;//事务回流
showmessage('系统出错');
end;
end;