Properties

Methods

__construct()

__construct(\Cake\Database\Driver  $driver) 

Constructor

This constructor will connect the driver so that methods like columnSql() and others will fail when the driver has not been connected.

Parameters

\Cake\Database\Driver $driver

The driver to use.

dropTableSql()

dropTableSql(\Cake\Database\Schema\TableSchema  $schema) : array

Generate the SQL to drop a table.

Parameters

\Cake\Database\Schema\TableSchema $schema

Schema instance

Returns

array —

SQL statements to drop a table.

listTablesSql()

listTablesSql(array  $config) : array

Generate the SQL to list the tables.

Parameters

array $config

The connection configuration to use for getting tables from.

Returns

array —

An array of (sql, params) to execute.

describeColumnSql()

describeColumnSql(string  $tableName, array  $config) : array

Generate the SQL to describe a table.

Parameters

string $tableName

The table name to get information on.

array $config

The connection configuration.

Returns

array —

An array of (sql, params) to execute.

describeIndexSql()

describeIndexSql(string  $tableName, array  $config) : array

Generate the SQL to describe the indexes in a table.

Parameters

string $tableName

The table name to get information on.

array $config

The connection configuration.

Returns

array —

An array of (sql, params) to execute.

describeForeignKeySql()

describeForeignKeySql(string  $tableName, array  $config) : array

Generate the SQL to describe the foreign keys in a table.

Parameters

string $tableName

The table name to get information on.

array $config

The connection configuration.

Returns

array —

An array of (sql, params) to execute.

describeOptionsSql()

describeOptionsSql(string  $tableName, array  $config) : array

Generate the SQL to describe table options

Parameters

string $tableName

Table name.

array $config

The connection configuration.

Returns

array —

SQL statements to get options for a table.

convertColumnDescription()

convertColumnDescription(\Cake\Database\Schema\TableSchema  $schema, array  $row) : void

Convert field description results into abstract schema fields.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table object to append fields to.

array $row

The row data from describeColumnSql.

convertIndexDescription()

convertIndexDescription(\Cake\Database\Schema\TableSchema  $schema, array  $row) : void

Convert an index description results into abstract schema indexes or constraints.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table object to append an index or constraint to.

array $row

The row data from describeIndexSql.

convertForeignKeyDescription()

convertForeignKeyDescription(\Cake\Database\Schema\TableSchema  $schema, array  $row) : void

Convert a foreign key description into constraints on the Table object.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table object to append a constraint to.

array $row

The row data from describeForeignKeySql.

convertOptionsDescription()

convertOptionsDescription(\Cake\Database\Schema\TableSchema  $schema, array  $row) : void

Convert options data into table options.

Parameters

\Cake\Database\Schema\TableSchema $schema

Table instance.

array $row

The row of data.

createTableSql()

createTableSql(\Cake\Database\Schema\TableSchema  $schema, array  $columns, array  $constraints, array  $indexes) : array

Generate the SQL to create a table.

Parameters

\Cake\Database\Schema\TableSchema $schema

Table instance.

array $columns

The columns to go inside the table.

array $constraints

The constraints for the table.

array $indexes

The indexes for the table.

Returns

array —

SQL statements to create a table.

columnSql()

columnSql(\Cake\Database\Schema\TableSchema  $schema, string  $name) : string

Generate the SQL fragment for a single column in a table.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table instance the column is in.

string $name

The name of the column.

Returns

string —

SQL fragment.

addConstraintSql()

addConstraintSql(\Cake\Database\Schema\TableSchema  $schema) : array

Generate the SQL queries needed to add foreign key constraints to the table

Parameters

\Cake\Database\Schema\TableSchema $schema

The table instance the foreign key constraints are.

Returns

array —

SQL fragment.

dropConstraintSql()

dropConstraintSql(\Cake\Database\Schema\TableSchema  $schema) : array

Generate the SQL queries needed to drop foreign key constraints from the table

Parameters

\Cake\Database\Schema\TableSchema $schema

The table instance the foreign key constraints are.

Returns

array —

SQL fragment.

constraintSql()

constraintSql(\Cake\Database\Schema\TableSchema  $schema, string  $name) : string

Generate the SQL fragments for defining table constraints.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table instance the column is in.

string $name

The name of the column.

Returns

string —

SQL fragment.

indexSql()

indexSql(\Cake\Database\Schema\TableSchema  $schema, string  $name) : string

Generate the SQL fragment for a single index in a table.

Parameters

\Cake\Database\Schema\TableSchema $schema

The table object the column is in.

string $name

The name of the column.

Returns

string —

SQL fragment.

truncateTableSql()

truncateTableSql(\Cake\Database\Schema\TableSchema  $schema) : array

Generate the SQL to truncate a table.

Parameters

\Cake\Database\Schema\TableSchema $schema

Table instance.

Returns

array —

SQL statements to truncate a table.

_foreignOnClause()

_foreignOnClause(string|null  $on) : string

Generate an ON clause for a foreign key.

Parameters

string|null $on

The on clause

Returns

string

_convertOnClause()

_convertOnClause(string  $clause) : string|null

Convert string on clauses to the abstract ones.

Parameters

string $clause

The on clause to convert.

Returns

string|null

_convertConstraintColumns()

_convertConstraintColumns(string|array  $references) : string

Convert foreign key constraints references to a valid stringified list

Parameters

string|array $references

The referenced columns of a foreign key constraint statement

Returns

string