procedure TFrmTransDemo.FormHide(Sender: TObject);
begin
DmEmployee.EmployeeDatabase.Commit;
end;
窗口中有两个按钮
BtnCommitEdits和BtnUndoEdits。按下BtnCommitEdits按钮将提交当前事务,并开始新的事务控制并刷新数据。procedure TFrmTransDemo.BtnCommitEditsClick(Sender: TObject);
begin
if DmEmployee.EmployeeDatabase.InTransaction and
(MessageDlg('Are you sure you want to commit your changes?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes) then
begin
DmEmployee.EmployeeDatabase.Commit;
DmEmployee.EmployeeDatabase.StartTransaction;
DmEmployee.EmployeeTable.Refresh;
end else
MessageDlg('Can''t Commit Changes: No Transaction Active', mtError, [mbOk], 0);
end;
按下
BtnUndoEdits按钮将返转当前事物,恢复原来的数据,开始新的事务控制,并刷新数据的显示。procedure TFrmTransDemo.BtnUndoEditsClick(Sender: TObject);
begin
if DmEmployee.EmployeeDatabase.InTransaction and (MessageDlg('Are you sure you want to undo all changes made during the ''current transaction?', mtConfirmation, [mbYes, mbNo], 0) = mrYes) then
begin
DmEmployee.EmployeeDatabase.Rollback;
DmEmployee.EmployeeDatabase.StartTransaction;
DmEmployee.EmployeeTable.Refresh;
end else
MessageDlg('Can''t Undo Edits: No Transaction Active', mtError, [mbOk], 0);
end;
上一篇: Delphi自定义部件开发(一)
下一篇: Delphi自定义部件开发(二)
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




