TUniConnection有一個AutoCommit屬性,字面意思是自動提交事務。那具體來說,就是當我們對數據庫進行增、刪、改操作時,自動提交事務,不用開發者來調用。
有一點要注意,TUniConnection的AutoCommit屬性是全局的,那所有使用他的查詢都被強制提交事務或不提交,但當你用InterBase的時候,TuniTable、TUniQuery、TUniStoredProc、TUniSQL與TUniLoader組件有自己的AutoCommit,那是否強制提交事務,就由這些組件來決定了!
看一下例子:
procedure TForm1.DeleteClick(Sender:TObject); begin UniSQL.Connection:=UniConnection; UniConnection.AutoCommit:=False; UniSQL.SQL.Text:='Delete from Dept'; UniSQL.Execute; UniConnection.Rollback;// 恢復刪除的記錄 UniConnection.AutoCommit:=True; UniSQL.SQL.Text:='Delete from Dept'; UniSQL.Execute; UniConnection.Rollback;// 不能恢復刪除的記錄 end;