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:

Instance Method Summary

Instance methods inherited from module DB::BeginTransaction

begin_transaction : Transaction begin_transaction, transaction(&) transaction

Instance methods inherited from module DB::Disposable

close close, closed? closed?

Instance Method Detail

def commit #

commits the current transaction


abstract def connection : Connection #

abstract def release_from_nested_transaction #

def rollback #

rollbacks the current transaction