Transaction

Revision Date: March 14, 2000  
 

Managing Transactions


The button bar allows you to StartTransaction, Post all datasets, Cancel all datasets, SavePoint, CommitRetain, Commit, Rollback and Close the current transaction being used in this utility.

   
ibtran.jpg   

These images are designed to reflect the behavior of the methods they access.

·The yellow folder pertains to an explicit transaction that can optionally be started.  
·The next two only act upon the datasets associated with the transaction but do not effect the transaction in any way.  
·The blue check mark denotes that all datasets will be posted if they are in a state that needs posting.  
·The red crossed circle (when active), denotes that any datasets with pending changes will be canceled.  
·If the folder is open then it means that the transaction will be retained otherwise it will be ended physically.  

There is only one transaction being used for this utility. Thus, all activity is within one transaction context. If you need another transaction context then you will need to open a second instance of this application. This is how two users could be simulated for multi-user testing.

AutoCommit automatically causes a SavePoint to be performed anytime a DDL, DML, EXECUTE PROCEDURE, etc. has been executed. A DML is generally execute in conjunction with a dataset being posted. AutoCommit is a behavioral property only and does not map to a native feature of InterBase.

ServerAutoCommit forces an internal commit-retain on the server without any API call from the application. This property is typically used when executing a script that doesn't contain explicit COMMIT statements or for very specialized tasks that need to be committed without the chance that the client will hang and cause a rollback of the operation due to failure.

ReadOnly, LockWait and Isolation with RecVersion map to native InterBase API features. More information for these settings can be obtained in the InterBase API documentation as well as the TIB_Transaction help information. Refer to the TPB (Transaction Parameter Block) settings in the InterBase API Guide for the most detailed explanation.