Schema management/reflection features for SQLServer.
string 'dbo'
Cake\Database\DriverInterfaceThe driver instance being used.
Constructor
Tries to use a matching database type to convert a SQL column definition to an abstract type definition.
Convert a column definition to the abstract types.
Convert foreign key constraints references to a valid stringified list
Convert string on clauses to the abstract ones.
Manipulate the default value.
Generate an ON clause for a foreign key.
Tries to use a matching database type to generate the SQL fragment for a single column in a table.
Helper method for generating key SQL snippets.
Generate the SQL queries needed to add foreign key constraints to the table
Generate the SQL fragment for a single column in a table.
Generate the SQL fragments for defining table constraints.
Convert field description results into abstract schema fields.
Convert a foreign key description into constraints on the Table object.
Convert an index description results into abstract schema indexes or constraints.
Convert options data into table options.
Generate the SQL to create a table.
Generate the SQL to describe a table.
Generate the SQL to describe the foreign keys in a table.
Generate the SQL to describe the indexes in a table.
Generate the SQL to describe table options
Generate the SQL queries needed to drop foreign key constraints from the table
Generate the SQL to drop a table.
Generate the SQL fragment for a single index in a table.
Generate the SQL to list the tables and views.
Generate the SQL to list the tables, excluding all views.
Generate the SQL to truncate a table.
__construct(Cake\Database\DriverInterface $driver)
Constructor
This constructor will connect the driver so that methods like columnSql() and others will fail when the driver has not been connected.
Cake\Database\DriverInterface $driver The driver to use.
_applyTypeSpecificColumnConversion(string $columnType, array $definition): array|null
Tries to use a matching database type to convert a SQL column definition to an abstract type definition.
string $columnType The column type.
array $definition The column definition.
array|null_convertColumn(string $col, int|null $length = null, int|null $precision = null, int|null $scale = null): array<string, mixed>
Convert a column definition to the abstract types.
The returned type will be a type that Cake\Database\TypeFactory can handle.
string $col The column type
int|null $length optional the column length
int|null $precision optional The column precision
int|null $scale optional The column scale
array<string, mixed>_convertConstraintColumns(array<string>|string $references): string
Convert foreign key constraints references to a valid stringified list
array<string>|string $references The referenced columns of a foreign key constraint statement
string_convertOnClause(string $clause): string
Convert string on clauses to the abstract ones.
string $clause string_defaultValue(string $type, string|null $default): string|int|null
Manipulate the default value.
Removes () wrapping default values, extracts strings from N'' wrappers and collation text and converts NULL strings.
string $type The schema type
string|null $default The default value.
string|int|null_foreignOnClause(string $on): string
Generate an ON clause for a foreign key.
string $on string_getTypeSpecificColumnSql(string $columnType, Cake\Database\Schema\TableSchemaInterface $schema, string $column): string|null
Tries to use a matching database type to generate the SQL fragment for a single column in a table.
string $columnType The column type.
Cake\Database\Schema\TableSchemaInterface $schema The table schema instance the column is in.
string $column The name of the column.
string|null_keySql(string $prefix, array $data): string
Helper method for generating key SQL snippets.
string $prefix The key prefix
array $data Key data.
stringaddConstraintSql(Cake\Database\Schema\TableSchema $schema): array
Generate the SQL queries needed to add foreign key constraints to the table
Cake\Database\Schema\TableSchema $schema arraycolumnSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Generate the SQL fragment for a single column in a table.
Cake\Database\Schema\TableSchema $schema string $name stringconstraintSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Generate the SQL fragments for defining table constraints.
Cake\Database\Schema\TableSchema $schema string $name stringconvertColumnDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Convert field description results into abstract schema fields.
Cake\Database\Schema\TableSchema $schema array $row voidconvertForeignKeyDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Convert a foreign key description into constraints on the Table object.
Cake\Database\Schema\TableSchema $schema array $row voidconvertIndexDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Convert an index description results into abstract schema indexes or constraints.
Cake\Database\Schema\TableSchema $schema array $row voidconvertOptionsDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Convert options data into table options.
Cake\Database\Schema\TableSchema $schema Table instance.
array $row The row of data.
voidcreateTableSql(Cake\Database\Schema\TableSchema $schema, array<string> $columns, array<string> $constraints, array<string> $indexes): array<string>
Generate the SQL to create a table.
Cake\Database\Schema\TableSchema $schema array<string> $columns array<string> $constraints array<string> $indexes array<string>describeColumnSql(string $tableName, array<string, mixed> $config): array
Generate the SQL to describe a table.
string $tableName array<string, mixed> $config arraydescribeForeignKeySql(string $tableName, array<string, mixed> $config): array
Generate the SQL to describe the foreign keys in a table.
string $tableName array<string, mixed> $config arraydescribeIndexSql(string $tableName, array<string, mixed> $config): array
Generate the SQL to describe the indexes in a table.
string $tableName array<string, mixed> $config arraydescribeOptionsSql(string $tableName, array<string, mixed> $config): array
Generate the SQL to describe table options
string $tableName Table name.
array<string, mixed> $config The connection configuration.
arraydropConstraintSql(Cake\Database\Schema\TableSchema $schema): array
Generate the SQL queries needed to drop foreign key constraints from the table
Cake\Database\Schema\TableSchema $schema arraydropTableSql(Cake\Database\Schema\TableSchema $schema): array
Generate the SQL to drop a table.
Cake\Database\Schema\TableSchema $schema Schema instance
arrayindexSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Generate the SQL fragment for a single index in a table.
Cake\Database\Schema\TableSchema $schema string $name stringlistTablesSql(array<string, mixed> $config): array
Generate the SQL to list the tables and views.
array<string, mixed> $config The connection configuration to use for getting tables from.
arraylistTablesWithoutViewsSql(array<string, mixed> $config): array<mixed>
Generate the SQL to list the tables, excluding all views.
array<string, mixed> $config The connection configuration to use for getting tables from.
array<mixed>truncateTableSql(Cake\Database\Schema\TableSchema $schema): array
Generate the SQL to truncate a table.
Cake\Database\Schema\TableSchema $schema arrayThe driver instance being used.
Cake\Database\DriverInterface
© 2005–present 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.
https://api.cakephp.org/4.4/class-Cake.Database.Schema.SqlserverSchemaDialect.html