Learn R Programming

pool (version 0.1.6)

DBI-connection-transaction: DBIConnection transaction methods are not supported for Pool objects.

Description

You cannot perform SQL transaction using a Pool object directly (because that would imply keeping a connection open and not knowing when to return it back to the pool).

Usage

# S4 method for Pool
dbBegin(conn, ...)

# S4 method for Pool dbCommit(conn, ...)

# S4 method for Pool dbRollback(conn, ...)

# S4 method for Pool dbWithTransaction(conn, code)

Arguments

conn, ..., code

See DBI::transactions().

Details

If you must use these methods, fetch an actual connection first with conn <- poolCheckout(pool) -- then call the appropriate DBI method on conn. Since you're fetching a connection from the pool yourself, you must also remember to return it back to the pool when you're done: poolReturn(conn) (otherwise, you have a leaked connection).

For simple transactions, consider using poolWithTransaction() instead, which is safer since it does not require you to fetch and release the connection yourself.

See DBI::transactions() for the original documentation.