class DB::Database
- DB::Database
- Reference
- Object
Overview
Acts as an entry point for database access. Connections are managed by a pool. The connection pool can be configured from URI parameters:
- initial_pool_size (default 1)
- max_pool_size (default 0 = unlimited)
- max_idle_pool_size (default 1)
- checkout_timeout (default 5.0)
- retry_attempts (default 1)
- retry_delay (in seconds, default 1.0)
It should be created from DB module. See DB#open
.
Refer to QueryMethods
for documentation about querying the database.
Included Modules
Defined in:
db/database.crInstance Method Summary
-
#close
Closes all connection to the database.
- #setup_connection(&proc : Connection -> Nil)
-
#uri : URI
Returns the uri with the connection settings to the database
-
#using_connection(&block)
yields a connection from the pool the connection is returned to the pool after when the block ends
Instance methods inherited from module DB::QueryMethods
exec(query, *args)
exec,
query(query, *args)query(query, *args, &block) query, query_all(query, *args, &block : ResultSet -> U) : Array(U)
query_all(query, *args, as types : Tuple)
query_all(query, *args, as type : Class) query_all, query_one(query, *args, &block : ResultSet -> U) : U
query_one(query, *args, as types : Tuple)
query_one(query, *args, as type : Class) query_one, query_one?(query, *args, &block : ResultSet -> U) : U?
query_one?(query, *args, as types : Tuple)
query_one?(query, *args, as type : Class) query_one?, scalar(query, *args) scalar
Instance Method Detail
def using_connection(&block)
#
yields a connection from the pool the connection is returned to the pool after when the block ends