Log In    |    Knowledge Base    |    4D Home
Tech Tip: What is a transaction?
Published On: September 29, 2006

Transactions are a series of related data modifications made to a database within a process. A transaction is not saved to a database permanently until the transaction is validated. If a transaction is not completed, either because it is canceled or because of some outside event, the modifications are not saved.

During a transaction, all changes made to the database data within a process are stored locally in a temporary buffer. If the transaction is accepted with VALIDATE TRANSACTION, the changes are saved permanently. If the transaction is canceled with CANCEL TRANSACTION, the changes are not saved.

Since transactions deal with temporary record addresses, after a transaction is validated or canceled, the selection for each table of the current process becomes empty. For this reason, you should be cautious when using named selections inside a transaction. After a transaction is validated or canceled, a named selection created before or during the transaction may contain incorrect record addresses. For example, a named selection may contain the address of a deleted record or the temporary address of a record added during the transaction. This warning also applies to sets, because they are based on bit tables with record addresses.

For more information on transactions, please go to: