On this page
Class BaseSchema
Base class for schema implementations.
This class contains methods that are common across the various SQL dialects.
Direct known subclasses
Cake\Database\Schema\MysqlSchema, Cake\Database\Schema\PostgresSchema, Cake\Database\Schema\SqliteSchema, Cake\Database\Schema\SqlserverSchemaMethod Detail
__constructsource public
__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.
_convertConstraintColumnssource protected
_convertConstraintColumns( string|array $references )Convert foreign key constraints references to a valid stringified list
Parameters
- 
     string|array $references
- The referenced columns of a foreign key constraint statement
Returns
stringstring
_convertOnClausesource protected
_convertOnClause( string $clause )Convert string on clauses to the abstract ones.
Parameters
- 
     string $clause
- The on clause to convert.
Returns
string|nullstring|null
_foreignOnClausesource protected
_foreignOnClause( string|null $on )Generate an ON clause for a foreign key.
Parameters
- 
     string|null $on
- The on clause
Returns
stringstring
addConstraintSqlsource abstract public
addConstraintSql( Cake\Database\Schema\Table $table )Generate the SQL queries needed to add foreign key constraints to the table
Parameters
- Cake\Database\Schema\Table- $table
- The table instance the foreign key constraints are.
Returns
arraySQL fragment.
columnSqlsource abstract public
columnSql( Cake\Database\Schema\Table $table , string $name )Generate the SQL fragment for a single column in a table.
Parameters
- Cake\Database\Schema\Table- $table
- The table instance the column is in.
- 
     string $name
- The name of the column.
Returns
stringSQL fragment.
constraintSqlsource abstract public
constraintSql( Cake\Database\Schema\Table $table , string $name )Generate the SQL fragments for defining table constraints.
Parameters
- Cake\Database\Schema\Table- $table
- The table instance the column is in.
- 
     string $name
- The name of the column.
Returns
stringSQL fragment.
convertColumnDescriptionsource abstract public
convertColumnDescription( Cake\Database\Schema\Table $table , array $row )Convert field description results into abstract schema fields.
Parameters
- Cake\Database\Schema\Table- $table
- The table object to append fields to.
- 
     array $row
- 
     The row data from describeColumnSql.
convertForeignKeyDescriptionsource abstract public
convertForeignKeyDescription( Cake\Database\Schema\Table $table , array $row )Convert a foreign key description into constraints on the Table object.
Parameters
- Cake\Database\Schema\Table- $table
- The table object to append a constraint to.
- 
     array $row
- 
     The row data from describeForeignKeySql.
convertIndexDescriptionsource abstract public
convertIndexDescription( Cake\Database\Schema\Table $table , array $row )Convert an index description results into abstract schema indexes or constraints.
Parameters
- Cake\Database\Schema\Table- $table
- The table object to append an index or constraint to.
- 
     array $row
- 
     The row data from describeIndexSql.
convertOptionsDescriptionsource public
convertOptionsDescription( Cake\Database\Schema\Table $table , array $row )Convert options data into table options.
Parameters
- Cake\Database\Schema\Table- $table
- Table instance.
- 
     array $row
- The row of data.
createTableSqlsource abstract public
createTableSql( Cake\Database\Schema\Table $table , array $columns , array $constraints , array $indexes )Generate the SQL to create a table.
Parameters
- Cake\Database\Schema\Table- $table
- 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
arraySQL statements to create a table.
describeColumnSqlsource abstract public
describeColumnSql( string $tableName , array $config )Generate the SQL to describe a table.
Parameters
- 
     string $tableName
- The table name to get information on.
- 
     array $config
- The connection configuration.
Returns
arrayAn array of (sql, params) to execute.
describeForeignKeySqlsource abstract public
describeForeignKeySql( string $tableName , array $config )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
arrayAn array of (sql, params) to execute.
describeIndexSqlsource abstract public
describeIndexSql( string $tableName , array $config )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
arrayAn array of (sql, params) to execute.
describeOptionsSqlsource public
describeOptionsSql( string $tableName , array $config )Generate the SQL to describe table options
Parameters
- 
     string $tableName
- Table name.
- 
     array $config
- The connection configuration.
Returns
arraySQL statements to get options for a table.
dropConstraintSqlsource abstract public
dropConstraintSql( Cake\Database\Schema\Table $table )Generate the SQL queries needed to drop foreign key constraints from the table
Parameters
- Cake\Database\Schema\Table- $table
- The table instance the foreign key constraints are.
Returns
arraySQL fragment.
dropTableSqlsource public
dropTableSql( Cake\Database\Schema\Table $table )Generate the SQL to drop a table.
Parameters
- Cake\Database\Schema\Table- $table
- Table instance
Returns
arraySQL statements to drop a table.
indexSqlsource abstract public
indexSql( Cake\Database\Schema\Table $table , string $name )Generate the SQL fragment for a single index in a table.
Parameters
- Cake\Database\Schema\Table- $table
- The table object the column is in.
- 
     string $name
- The name of the column.
Returns
stringSQL fragment.
listTablesSqlsource abstract public
listTablesSql( array $config )Generate the SQL to list the tables.
Parameters
- 
     array $config
- The connection configuration to use for getting tables from.
Returns
arrayAn array of (sql, params) to execute.
truncateTableSqlsource abstract public
truncateTableSql( Cake\Database\Schema\Table $table )Generate the SQL to truncate a table.
Parameters
- Cake\Database\Schema\Table- $table
- Table instance.
Returns
arraySQL statements to truncate a table.
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.Schema.BaseSchema.html