abstract class DB::Transaction

Overview

Transactions should be started from DB#transaction, Connection#transaction or Connection#begin_transaction.

Use Transaction#connection to submit statements to the database.

Use Transaction#commit or Transaction#rollback to close the ongoing transaction explicitly. Or refer to BeginTransaction#transaction for documentation on how to use #transaction(&block) methods in DB and Connection.

Nested transactions are supported by using sql SAVEPOINT. To start a nested transaction use Transaction#transaction or Transaction#begin_transaction.

Included Modules

Direct Known Subclasses

Defined in:

lib/db/src/db/transaction.cr
ext/db/transaction.cr

Instance methods inherited from class Object

blank_for_validates_required? : Bool blank_for_validates_required?