Class Driver
Represents a database diver containing all specificities for a database engine including its SQL dialect
Direct known subclasses
Cake\Database\Driver\Mysql, Cake\Database\Driver\Postgres, Cake\Database\Driver\Sqlite, Cake\Database\Driver\SqlserverMethod Detail
__constructsource public
__construct( array $config [] )
Constructor
Parameters
- array
$config
optional [] - The configuration for the driver.
Throws
InvalidArgumentException
InvalidArgumentException
__debugInfosource public
__debugInfo( )
Returns an array that can be used to describe the internal state of this object.
Returns
array
array
autoQuotingsource public
autoQuoting( boolean $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
Parameters
- boolean
$enable
optional null - whether to enable auto quoting
Returns
boolean
bool
beginTransactionsource abstract public
beginTransaction( )
Starts a transaction
Returns
boolean
true on success, false otherwise
commitTransactionsource abstract public
commitTransaction( )
Commits a transaction
Returns
boolean
true on success, false otherwise
compileQuerysource 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
array
containing 2 entries. The first entity is the transformed query and the second one the compiled SQL
connectsource abstract public
connect( )
Establishes a connection to the database server
Returns
boolean
true con success
connectionsource abstract public
connection( null|PDO $connection null )
Returns correct connection resource or object that is internally used If first argument is passed,
Parameters
- null|PDO
$connection
optional null - The connection object
disableForeignKeySQLsource abstract public
disableForeignKeySQL( )
Get the SQL for disabling foreign keys
Returns
string
string
enableForeignKeySQLsource abstract public
enableForeignKeySQL( )
Get the SQL for enabling foreign keys
Returns
string
string
enabledsource abstract public
enabled( )
Returns whether php is able to use this driver for connecting to database
Returns
boolean
true if it is valid to use this driver
isConnectedsource public
isConnected( )
Check whether or not the driver is connected.
Returns
boolean
bool
lastInsertIdsource public
lastInsertId( string $table null , string $column null )
Returns last id generated for a table or sequence in database
Parameters
- string
$table
optional null - table name or sequence to get last insert value from
- string
$column
optional null - the name of the column representing the primary key
Returns
string|integer
string|int
newCompilersource public
newCompiler( )
Returns an instance of a QueryCompiler
Returns
Cake\Database\QueryCompiler
\Cake\Database\QueryCompiler
preparesource abstract public
prepare( string|Cake\Database\Query $query )
Prepares a sql statement to be executed
Parameters
- string|
Cake\Database\Query
$query
- The query to convert into a statement.
Returns
Cake\Database\StatementInterface
\Cake\Database\StatementInterface
queryTranslatorsource 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
callable
callable
quotesource abstract 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
string
string
quoteIdentifiersource 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
string
string
releaseSavePointSQLsource abstract public
releaseSavePointSQL( string $name )
Get the SQL for releasing a save point.
Parameters
- string
$name
- The table name
Returns
string
string
rollbackSavePointSQLsource abstract public
rollbackSavePointSQL( string $name )
Get the SQL for rollingback a save point.
Parameters
- string
$name
- The table name
Returns
string
string
rollbackTransactionsource abstract public
rollbackTransaction( )
Rollsback a transaction
Returns
boolean
true on success, false otherwise
savePointSQLsource abstract public
savePointSQL( string $name )
Get the SQL for creating a save point.
Parameters
- string
$name
- The table name
Returns
string
string
schemaDialectsource abstract public
schemaDialect( )
Get the schema dialect.
Used by Cake\Database\Schema package to reflect schema and generate schema.
If all the tables that use this Driver specify their own schemas, then this may return null.
Returns
Cake\Database\Schema\BaseSchema
\Cake\Database\Schema\BaseSchema
schemaValuesource public
schemaValue( mixed $value )
Escapes values for use in schema definitions.
Parameters
- mixed
$value
- The value to escape.
Returns
string
String for use in schema definitions.
supportsDynamicConstraintssource abstract public
supportsDynamicConstraints( )
Returns whether the driver supports adding or dropping constraints to already created tables.
Returns
boolean
true if driver supports dynamic constraints
supportsQuotingsource public
supportsQuoting( )
Checks if the driver supports quoting
Returns
boolean
bool
supportsSavePointssource public
supportsSavePoints( )
Returns whether this driver supports save points for nested transactions
Returns
boolean
true if save points are supported, false otherwise
Properties summary
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.1/class-Cake.Database.Driver.html