procedure TForm1.TransDButtonClick(Sender: TObject); var num:Integer; //描述一个事务处理结构变量 TransD: TTransactionDesc; begin if not SQLConnectionTD.InTransaction then //判断连接组件的当前事务是否激活,如果没有活动的事务,则执行Begin...end过程 begin //为事务设置初值 TransD.TransactionID:= 1; TransD.IsolationLevel:= xilREADCOMMITTED; //将结构作为调用StartTransaction方法的参数 SQLConnectionTD.StartTransaction(TransD); try num := StrToInt(AmtEdit.Text); //在运行时,获取用户在编辑框中输入的贷款数 Debit.Params.ParamValues['Amount'] :=num; //为数据集SQLDataSet的参数赋值 Credit.Params.ParamValues['Amount'] :=num; SQLConnectionTD.Commit(TD); ; //提交事务,执行所做的修改 except SQLConnectionTD.Rollback(TD); //如果提交失败,则回滚,即取消更改操作 end; end; end;