Transactions on Paradox, dBASE, FoxPro, and Access

<< Click to Display Table of Contents >>

Navigation:  Application development > Transactions >

Transactions on Paradox, dBASE, FoxPro, and Access

Previous pageReturn to chapter overviewNext page

Transactions for Paradox, dBASE, FoxPro, and Access drivers (local transactions) enable you to roll back (revert) or commit updates to standard tables. This helps ensure that applications will perform updates in a consistent way.

When a local transaction is started on a standard database, updates performed against tables in that database are logged. Each log record contains the old record buffer of the record that is updated. When a transaction is active, the records with updates are locked and these locks are held until the transaction is either committed or rolled back.

The Commit operation releases all locks that were held when that transaction was active.

The Rollback operation reapplies the updates to the underlying tables to restore the original state of the database. Once the original state of the database is restored, the locks are released.

Limitations

The following limitations apply to local transactions:

For standard databases (Paradox, dBASE, FoxPro, Access) there is no automatic crash recovery or DDL-related actions such as table create, restructure, index creation, table/index deletion, and so on.

To perform transactions on a Paradox table, a valid index must exist. Data cannot be rolled back on Paradox tables lacking an index.

Inserts rolled back on dBase and FoxPro tables are actually only soft deletes.

Local transaction do not work for temporary tables.

Local transactions do not work for the Text driver (ASCII files).

For Access, if you do not supply a user name and use user-level security you can only have one active transaction. Transactions are occurring at the driver level not at the database level.

 

hmtoggle_plus1Transaction topics