Class Driver
Represents a database driver containing all specificities for a database engine including its SQL dialect.
- Cake\Database\Driver implements Cake\Database\DriverInterface
Direct Subclasses
Properties summary
-
$_autoQuoting
protectedboolean
Indicates whether or not the driver is doing automatic identifier quoting for all queries
-
$_baseConfig
protectedarray
Base configuration that is merged into the user supplied configuration data.
-
$_config
protectedarray
Configuration data. -
$_connection
protectedPDO|null
Instance of PDO.
Method Summary
-
__construct() public
Constructor -
__debugInfo() public
Returns an array that can be used to describe the internal state of this object.
-
__destruct() public
Destructor -
_connect() protected
Establishes a connection to the database server -
autoQuoting() public
Returns whether or not this driver should automatically quote identifiers in queries
-
beginTransaction() public
Starts a transaction. -
commitTransaction() public
Commits a transaction. -
compileQuery() public
Transforms the passed query to this Driver's dialect and returns an instance of the transformed query and the full compiled SQL string.
-
connect() abstract public
Establishes a connection to the database server. -
connection() public
Returns correct connection resource or object that is internally used If first argument is passed, it will set internal connection object or result to the value passed.
-
disableAutoQuoting() public
Disable auto quoting of identifiers in queries. -
disableForeignKeySQL() abstract public
Get the SQL for disabling foreign keys. -
disconnect() public
Disconnects from database server. -
enableAutoQuoting() public
Sets whether or not this driver should automatically quote identifiers in queries.
-
enableForeignKeySQL() abstract public
Get the SQL for enabling foreign keys. -
enabled() abstract public
Returns whether php is able to use this driver for connecting to database. -
getConnection() public
Get the internal PDO connection instance. -
isAutoQuotingEnabled() public
Returns whether or not this driver should automatically quote identifiers in queries.
-
isConnected() public
Checks whether or not the driver is connected. -
lastInsertId() public
Returns last id generated for a table or sequence in database. -
newCompiler() public
Returns an instance of a QueryCompiler. -
prepare() public
Prepares a sql statement to be executed. -
queryTranslator() abstract public
Returns a callable function that will be used to transform a passed Query object. This function, in turn, will return an instance of a Query object that has been transformed to accommodate any specificities of the SQL dialect in use.
-
quote() public
Returns a value in a safe representation to be used in a query string -
quoteIdentifier() abstract public
Quotes a database identifier (a column name, table name, etc..) to be used safely in queries without the risk of using reserved words.
-
releaseSavePointSQL() abstract public
Get the SQL for releasing a save point. -
rollbackSavePointSQL() abstract public
Get the SQL for rollingback a save point. -
rollbackTransaction() public
Rollbacks a transaction. -
savePointSQL() abstract public
Get the SQL for creating a save point. -
schema() public
Returns the schema name that's being used. -
schemaDialect() abstract public
Get the schema dialect. -
schemaValue() public
Escapes values for use in schema definitions. -
setConnection() public
Set the internal PDO connection instance. -
supportsDynamicConstraints() abstract public
Returns whether the driver supports adding or dropping constraints to already created tables.
-
supportsQuoting() public
Checks if the driver supports quoting, as PDO_ODBC does not support it. -
supportsSavePoints() public
Returns whether this driver supports save points for nested transactions.
Method Detail
__construct() public ¶
__construct( array $config [] )
Constructor
Parameters
- array $config optional []
- The configuration for the driver.
Throws
__debugInfo() public ¶
__debugInfo( )
Returns an array that can be used to describe the internal state of this object.
Returns
_connect() protected ¶
_connect( string $dsn , array $config )
Establishes a connection to the database server
Parameters
- string $dsn
- A Driver-specific PDO-DSN
- array $config
- configuration to be used for creating connection
Returns
true on success
autoQuoting() public ¶
autoQuoting( boolean|null $enable null )
Returns whether or not this driver should automatically quote identifiers in queries
If called with a boolean argument, it will toggle the auto quoting setting to the passed value
Deprecated
Parameters
- boolean|null $enable optional null
- Whether to enable auto quoting
Returns
beginTransaction() public ¶
beginTransaction( )
Starts a transaction.
Returns
True on success, false otherwise.
Implementation of
commitTransaction() public ¶
commitTransaction( )
Commits a transaction.
Returns
True on success, false otherwise.
Implementation of
compileQuery() public ¶
compileQuery( Cake\Database\Query
$query , Cake\Database\ValueBinder $generator )
Transforms the passed query to this Driver's dialect and returns an instance of the transformed query and the full compiled SQL string.
Parameters
-
Cake\Database\Query
$query - The query to compile.
- Cake\Database\ValueBinder $generator
- The value binder to use.
Returns
containing 2 entries. The first entity is the transformed query and the second one the compiled SQL.
Implementation of
connect() abstract public ¶
connect( )
Establishes a connection to the database server.
Returns
True on success, false on failure.
Implementation of
connection() public ¶
connection( mixed $connection null )
Returns correct connection resource or object that is internally used If first argument is passed, it will set internal connection object or result to the value passed.
Deprecated
Parameters
- mixed $connection optional null
- The PDO connection instance.
Returns
Connection object used internally.
disableAutoQuoting() public ¶
disableAutoQuoting( )
Disable auto quoting of identifiers in queries.
Returns
$this
disableForeignKeySQL() abstract public ¶
disableForeignKeySQL( )
Get the SQL for disabling foreign keys.
Returns
Implementation of
enableAutoQuoting() public ¶
enableAutoQuoting( boolean $enable true )
Sets whether or not this driver should automatically quote identifiers in queries.
Parameters
- boolean $enable optional true
- Whether to enable auto quoting
Returns
$this
Implementation of
enableForeignKeySQL() abstract public ¶
enableForeignKeySQL( )
Get the SQL for enabling foreign keys.
Returns
Implementation of
enabled() abstract public ¶
enabled( )
Returns whether php is able to use this driver for connecting to database.
Returns
True if it is valid to use this driver.
Implementation of
getConnection() public ¶
getConnection( )
Get the internal PDO connection instance.
Returns
Implementation of
isAutoQuotingEnabled() public ¶
isAutoQuotingEnabled( )
Returns whether or not this driver should automatically quote identifiers in queries.
Returns
Implementation of
isConnected() public ¶
isConnected( )
Checks whether or not the driver is connected.
Returns
Implementation of
lastInsertId() public ¶
lastInsertId( string|null $table null , string|null $column null )
Returns last id generated for a table or sequence in database.
Parameters
- string|null $table optional null
- table name or sequence to get last insert value from.
- string|null $column optional null
- the name of the column representing the primary key.
Returns
Implementation of
newCompiler() public ¶
newCompiler( )
Returns an instance of a QueryCompiler.
Returns
Implementation of
prepare() public ¶
prepare( string|Cake\Database\Query
$query )
Prepares a sql statement to be executed.
Parameters
-
string|
Cake\Database\Query
$query - The query to turn into a prepared statement.
Returns
Implementation of
queryTranslator() abstract public ¶
queryTranslator( string $type )
Returns a callable function that will be used to transform a passed Query object. This function, in turn, will return an instance of a Query object that has been transformed to accommodate any specificities of the SQL dialect in use.
Parameters
- string $type
The type of query to be transformed (select, insert, update, delete).
Returns
Implementation of
quote() public ¶
quote( mixed $value , string $type )
Returns a value in a safe representation to be used in a query string
Parameters
- mixed $value
- The value to quote.
- string $type
- Type to be used for determining kind of quoting to perform.
Returns
Implementation of
quoteIdentifier() abstract public ¶
quoteIdentifier( string $identifier )
Quotes a database identifier (a column name, table name, etc..) to be used safely in queries without the risk of using reserved words.
Parameters
- string $identifier
- The identifier expression to quote.
Returns
Implementation of
releaseSavePointSQL() abstract public ¶
releaseSavePointSQL( string $name )
Get the SQL for releasing a save point.
Parameters
- string $name
- The table name.
Returns
Implementation of
rollbackSavePointSQL() abstract public ¶
rollbackSavePointSQL( string $name )
Get the SQL for rollingback a save point.
Parameters
- string $name
- The table name.
Returns
Implementation of
rollbackTransaction() public ¶
rollbackTransaction( )
Rollbacks a transaction.
Returns
True on success, false otherwise.
Implementation of
savePointSQL() abstract public ¶
savePointSQL( string $name )
Get the SQL for creating a save point.
Parameters
- string $name
- The table name.
Returns
Implementation of
schema() public ¶
schema( )
Returns the schema name that's being used.
Returns
Implementation of
schemaDialect() abstract public ¶
schemaDialect( )
Get the schema dialect.
Returns
Implementation of
schemaValue() public ¶
schemaValue( mixed $value )
Escapes values for use in schema definitions.
Parameters
- mixed $value
- The value to escape.
Returns
String for use in schema definitions.
Implementation of
setConnection() public ¶
setConnection( PDO $connection )
Set the internal PDO connection instance.
Parameters
- PDO $connection
- PDO instance.
Returns
$this
Implementation of
supportsDynamicConstraints() abstract public ¶
supportsDynamicConstraints( )
Returns whether the driver supports adding or dropping constraints to already created tables.
Returns
true if driver supports dynamic constraints.
Implementation of
supportsQuoting() public ¶
supportsQuoting( )
Checks if the driver supports quoting, as PDO_ODBC does not support it.
Returns
Implementation of
supportsSavePoints() public ¶
supportsSavePoints( )
Returns whether this driver supports save points for nested transactions.
Returns
True if save points are supported, false otherwise.
Implementation of
Properties detail
$_autoQuoting ¶
Indicates whether or not the driver is doing automatic identifier quoting for all queries
false
$_baseConfig ¶
Base configuration that is merged into the user supplied configuration data.
[]