UltraLite C++ User's Guide
Understanding UltraLite Development
UltraLite provides transaction processing to ensure the correctness of the data in your database. A transaction is a logical unit of work: it is either all executed or none of it is executed.
UltraLite for C++ requires that transactions be explicitly completed. You must execute a Connection.Commit() statement to complete a transaction and make changes to your database permanent, or you must execute a Connection.Rollback() statement to cancel all the operations of a transaction.
For more information, see the Ultralite_Connection class in the API Reference, in the online books.