abstract class DB::Connection
- DB::Connection
- Reference
- Object
Overview
Database driver implementors must subclass Connection
.
Represents one active connection to a database.
Users should never instantiate a Connection
manually. Use DB#open
or Database#connection
.
Refer to QueryMethods
for documentation about querying the database through this connection.
Note to implementors
The connection must be initialized in #initialize
and closed in #do_close
.
Override #build_prepared_statement
method in order to return a prepared Statement
to allow querying.
Override #build_unprepared_statement
method in order to return a unprepared Statement
to allow querying.
See also Statement
to define how the statements are executed.
If at any give moment the connection is lost a DB::ConnectionLost should be raised. This will allow the connection pool to try to reconnect or use another connection if available.
Included Modules
- DB::BeginTransaction
- DB::Disposable
- DB::SessionMethods(DB::Connection, DB::Statement)
Defined in:
lib/db/src/db/connection.crlib/db/src/db/error.cr
ext/db/connection.cr