Connection

class Connection implements ConnectionInterface (View source)

Properties

protected PDO $pdo The active PDO connection.
protected PDO $readPdo The active PDO connection used for reads.
protected callable $reconnector The reconnector instance for the connection.
protected Grammar $queryGrammar The query grammar implementation.
protected Grammar $schemaGrammar The schema grammar implementation.
protected Processor $postProcessor The query post processor implementation.
protected Dispatcher $events The event dispatcher instance.
protected Paginator $paginator The paginator environment instance.
protected CacheManager $cache The cache manager instance.
protected int $fetchMode The default fetch mode of the connection.
protected int $transactions The number of active transactions.
protected array $queryLog All of the queries run against the connection.
protected bool $loggingQueries Indicates whether queries are being logged.
protected bool $pretending Indicates if the connection is in a "dry run".
protected string $database The name of the connected database.
protected string $tablePrefix The table prefix for the connection.
protected array $config The database connection configuration options.

Methods

void __construct(PDO $pdo, string $database = '', string $tablePrefix = '', array $config = array())

Create a new database connection instance.

void useDefaultQueryGrammar()

Set the query grammar to the default implementation.

Grammar getDefaultQueryGrammar()

Get the default query grammar instance.

void useDefaultSchemaGrammar()

Set the schema grammar to the default implementation.

Grammar getDefaultSchemaGrammar()

Get the default schema grammar instance.

void useDefaultPostProcessor()

Set the query post processor to the default implementation.

Processor getDefaultPostProcessor()

Get the default post processor instance.

Builder getSchemaBuilder()

Get a schema builder instance for the connection.

Builder table(string $table)

Begin a fluent query against a database table.

Expression raw(mixed $value)

Get a new raw query expression.

mixed selectOne(string $query, array $bindings = array())

Run a select statement and return a single result.

array selectFromWriteConnection(string $query, array $bindings = array())

Run a select statement against the database.

array select(string $query, array $bindings = array(), bool $useReadPdo = true)

Run a select statement against the database.

PDO getPdoForSelect(bool $useReadPdo = true)

Get the PDO connection to use for a select query.

bool insert(string $query, array $bindings = array())

Run an insert statement against the database.

int update(string $query, array $bindings = array())

Run an update statement against the database.

int delete(string $query, array $bindings = array())

Run a delete statement against the database.

bool statement(string $query, array $bindings = array())

Execute an SQL statement and return the boolean result.

int affectingStatement(string $query, array $bindings = array())

Run an SQL statement and get the number of rows affected.

bool unprepared(string $query)

Run a raw, unprepared query against the PDO connection.

array prepareBindings(array $bindings)

Prepare the query bindings for execution.

mixed transaction(Closure $callback)

Execute a Closure within a transaction.

void beginTransaction()

Start a new database transaction.

void commit()

Commit the active database transaction.

void rollBack()

Rollback the active database transaction.

int transactionLevel()

Get the number of active transactions.

array pretend(Closure $callback)

Execute the given callback in "dry run" mode.

mixed run(string $query, array $bindings, Closure $callback)

Run a SQL statement and log its execution context.

mixed runQueryCallback(string $query, array $bindings, Closure $callback)

Run a SQL statement.

mixed tryAgainIfCausedByLostConnection(QueryException $e, string $query, array $bindings, Closure $callback)

Handle a query exception that occurred during query execution.

bool causedByLostConnection(QueryException $e)

Determine if the given exception was caused by a lost connection.

void disconnect()

Disconnect from the underlying PDO connection.

void reconnect()

Reconnect to the database.

void reconnectIfMissingConnection()

Reconnect to the database if a PDO connection is missing.

void logQuery(string $query, array $bindings, float|null $time = null)

Log a query in the connection's query log.

void listen(Closure $callback)

Register a database query listener with the connection.

void fireConnectionEvent(string $event)

Fire an event for this connection.

float getElapsedTime(int $start)

Get the elapsed time since a given starting point.

Column getDoctrineColumn(string $table, string $column)

Get a Doctrine Schema Column instance.

AbstractSchemaManager getDoctrineSchemaManager()

Get the Doctrine DBAL schema manager for the connection.

Connection getDoctrineConnection()

Get the Doctrine DBAL database connection instance.

PDO getPdo()

Get the current PDO connection.

PDO getReadPdo()

Get the current PDO connection used for reading.

$this setPdo(PDO|null $pdo)

Set the PDO connection.

$this setReadPdo(PDO|null $pdo)

Set the PDO connection used for reading.

$this setReconnector(callable $reconnector)

Set the reconnect instance on the connection.

string|null getName()

Get the database connection name.

mixed getConfig(string $option)

Get an option from the configuration options.

string getDriverName()

Get the PDO driver name.

Grammar getQueryGrammar()

Get the query grammar used by the connection.

void setQueryGrammar(Grammar $grammar)

Set the query grammar used by the connection.

Grammar getSchemaGrammar()

Get the schema grammar used by the connection.

void setSchemaGrammar(Grammar $grammar)

Set the schema grammar used by the connection.

Processor getPostProcessor()

Get the query post processor used by the connection.

void setPostProcessor(Processor $processor)

Set the query post processor used by the connection.

Dispatcher getEventDispatcher()

Get the event dispatcher used by the connection.

void setEventDispatcher(Dispatcher $events)

Set the event dispatcher instance on the connection.

Factory getPaginator()

Get the paginator environment instance.

void setPaginator(Factory|Closure $paginator)

Set the pagination environment instance.

CacheManager getCacheManager()

Get the cache manager instance.

void setCacheManager(CacheManager|Closure $cache)

Set the cache manager instance on the connection.

bool pretending()

Determine if the connection in a "dry run".

int getFetchMode()

Get the default fetch mode for the connection.

int setFetchMode(int $fetchMode)

Set the default fetch mode for the connection.

array getQueryLog()

Get the connection query log.

void flushQueryLog()

Clear the query log.

void enableQueryLog()

Enable the query log on the connection.

void disableQueryLog()

Disable the query log on the connection.

bool logging()

Determine whether we're logging queries.

string getDatabaseName()

Get the name of the connected database.

string setDatabaseName(string $database)

Set the name of the connected database.

string getTablePrefix()

Get the table prefix for the connection.

void setTablePrefix(string $prefix)

Set the table prefix in use by the connection.

Grammar withTablePrefix(Grammar $grammar)

Set the table prefix and return the grammar.

Details

void __construct(PDO $pdo, string $database = '', string $tablePrefix = '', array $config = array())

Create a new database connection instance.

Parameters

PDO $pdo
string $database
string $tablePrefix
array $config

Return Value

void

void useDefaultQueryGrammar()

Set the query grammar to the default implementation.

Return Value

void

protected Grammar getDefaultQueryGrammar()

Get the default query grammar instance.

Return Value

Grammar

void useDefaultSchemaGrammar()

Set the schema grammar to the default implementation.

Return Value

void

protected Grammar getDefaultSchemaGrammar()

Get the default schema grammar instance.

Return Value

Grammar

void useDefaultPostProcessor()

Set the query post processor to the default implementation.

Return Value

void

protected Processor getDefaultPostProcessor()

Get the default post processor instance.

Return Value

Processor

Builder getSchemaBuilder()

Get a schema builder instance for the connection.

Return Value

Builder

Builder table(string $table)

Begin a fluent query against a database table.

Parameters

string $table

Return Value

Builder

Expression raw(mixed $value)

Get a new raw query expression.

Parameters

mixed $value

Return Value

Expression

mixed selectOne(string $query, array $bindings = array())

Run a select statement and return a single result.

Parameters

string $query
array $bindings

Return Value

mixed

array selectFromWriteConnection(string $query, array $bindings = array())

Run a select statement against the database.

Parameters

string $query
array $bindings

Return Value

array

array select(string $query, array $bindings = array(), bool $useReadPdo = true)

Run a select statement against the database.

Parameters

string $query
array $bindings
bool $useReadPdo

Return Value

array

protected PDO getPdoForSelect(bool $useReadPdo = true)

Get the PDO connection to use for a select query.

Parameters

bool $useReadPdo

Return Value

PDO

bool insert(string $query, array $bindings = array())

Run an insert statement against the database.

Parameters

string $query
array $bindings

Return Value

bool

int update(string $query, array $bindings = array())

Run an update statement against the database.

Parameters

string $query
array $bindings

Return Value

int

int delete(string $query, array $bindings = array())

Run a delete statement against the database.

Parameters

string $query
array $bindings

Return Value

int

bool statement(string $query, array $bindings = array())

Execute an SQL statement and return the boolean result.

Parameters

string $query
array $bindings

Return Value

bool

int affectingStatement(string $query, array $bindings = array())

Run an SQL statement and get the number of rows affected.

Parameters

string $query
array $bindings

Return Value

int

bool unprepared(string $query)

Run a raw, unprepared query against the PDO connection.

Parameters

string $query

Return Value

bool

array prepareBindings(array $bindings)

Prepare the query bindings for execution.

Parameters

array $bindings

Return Value

array

mixed transaction(Closure $callback)

Execute a Closure within a transaction.

Parameters

Closure $callback

Return Value

mixed

Exceptions

Throwable

void beginTransaction()

Start a new database transaction.

Return Value

void

void commit()

Commit the active database transaction.

Return Value

void

void rollBack()

Rollback the active database transaction.

Return Value

void

int transactionLevel()

Get the number of active transactions.

Return Value

int

array pretend(Closure $callback)

Execute the given callback in "dry run" mode.

Parameters

Closure $callback

Return Value

array

protected mixed run(string $query, array $bindings, Closure $callback)

Run a SQL statement and log its execution context.

Parameters

string $query
array $bindings
Closure $callback

Return Value

mixed

Exceptions

QueryException

protected mixed runQueryCallback(string $query, array $bindings, Closure $callback)

Run a SQL statement.

Parameters

string $query
array $bindings
Closure $callback

Return Value

mixed

Exceptions

QueryException

protected mixed tryAgainIfCausedByLostConnection(QueryException $e, string $query, array $bindings, Closure $callback)

Handle a query exception that occurred during query execution.

Parameters

QueryException $e
string $query
array $bindings
Closure $callback

Return Value

mixed

Exceptions

QueryException

protected bool causedByLostConnection(QueryException $e)

Determine if the given exception was caused by a lost connection.

Parameters

QueryException $e

Return Value

bool

void disconnect()

Disconnect from the underlying PDO connection.

Return Value

void

void reconnect()

Reconnect to the database.

Return Value

void

Exceptions

LogicException

protected void reconnectIfMissingConnection()

Reconnect to the database if a PDO connection is missing.

Return Value

void

void logQuery(string $query, array $bindings, float|null $time = null)

Log a query in the connection's query log.

Parameters

string $query
array $bindings
float|null $time

Return Value

void

void listen(Closure $callback)

Register a database query listener with the connection.

Parameters

Closure $callback

Return Value

void

protected void fireConnectionEvent(string $event)

Fire an event for this connection.

Parameters

string $event

Return Value

void

protected float getElapsedTime(int $start)

Get the elapsed time since a given starting point.

Parameters

int $start

Return Value

float

Column getDoctrineColumn(string $table, string $column)

Get a Doctrine Schema Column instance.

Parameters

string $table
string $column

Return Value

Column

AbstractSchemaManager getDoctrineSchemaManager()

Get the Doctrine DBAL schema manager for the connection.

Return Value

AbstractSchemaManager

Connection getDoctrineConnection()

Get the Doctrine DBAL database connection instance.

Return Value

Connection

PDO getPdo()

Get the current PDO connection.

Return Value

PDO

PDO getReadPdo()

Get the current PDO connection used for reading.

Return Value

PDO

$this setPdo(PDO|null $pdo)

Set the PDO connection.

Parameters

PDO|null $pdo

Return Value

$this

$this setReadPdo(PDO|null $pdo)

Set the PDO connection used for reading.

Parameters

PDO|null $pdo

Return Value

$this

$this setReconnector(callable $reconnector)

Set the reconnect instance on the connection.

Parameters

callable $reconnector

Return Value

$this

string|null getName()

Get the database connection name.

Return Value

string|null

mixed getConfig(string $option)

Get an option from the configuration options.

Parameters

string $option

Return Value

mixed

string getDriverName()

Get the PDO driver name.

Return Value

string

Grammar getQueryGrammar()

Get the query grammar used by the connection.

Return Value

Grammar

void setQueryGrammar(Grammar $grammar)

Set the query grammar used by the connection.

Parameters

Grammar $grammar

Return Value

void

Grammar getSchemaGrammar()

Get the schema grammar used by the connection.

Return Value

Grammar

void setSchemaGrammar(Grammar $grammar)

Set the schema grammar used by the connection.

Parameters

Grammar $grammar

Return Value

void

Processor getPostProcessor()

Get the query post processor used by the connection.

Return Value

Processor

void setPostProcessor(Processor $processor)

Set the query post processor used by the connection.

Parameters

Processor $processor

Return Value

void

Dispatcher getEventDispatcher()

Get the event dispatcher used by the connection.

Return Value

Dispatcher

void setEventDispatcher(Dispatcher $events)

Set the event dispatcher instance on the connection.

Parameters

Dispatcher $events

Return Value

void

Factory getPaginator()

Get the paginator environment instance.

Return Value

Factory

void setPaginator(Factory|Closure $paginator)

Set the pagination environment instance.

Parameters

Factory|Closure $paginator

Return Value

void

CacheManager getCacheManager()

Get the cache manager instance.

Return Value

CacheManager

void setCacheManager(CacheManager|Closure $cache)

Set the cache manager instance on the connection.

Parameters

CacheManager|Closure $cache

Return Value

void

bool pretending()

Determine if the connection in a "dry run".

Return Value

bool

int getFetchMode()

Get the default fetch mode for the connection.

Return Value

int

int setFetchMode(int $fetchMode)

Set the default fetch mode for the connection.

Parameters

int $fetchMode

Return Value

int

array getQueryLog()

Get the connection query log.

Return Value

array

void flushQueryLog()

Clear the query log.

Return Value

void

void enableQueryLog()

Enable the query log on the connection.

Return Value

void

void disableQueryLog()

Disable the query log on the connection.

Return Value

void

bool logging()

Determine whether we're logging queries.

Return Value

bool

string getDatabaseName()

Get the name of the connected database.

Return Value

string

string setDatabaseName(string $database)

Set the name of the connected database.

Parameters

string $database

Return Value

string

string getTablePrefix()

Get the table prefix for the connection.

Return Value

string

void setTablePrefix(string $prefix)

Set the table prefix in use by the connection.

Parameters

string $prefix

Return Value

void

Grammar withTablePrefix(Grammar $grammar)

Set the table prefix and return the grammar.

Parameters

Grammar $grammar

Return Value

Grammar

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/4.2/Illuminate/Database/Connection.html