Documentation

SQLServerSchemaManager extends AbstractSchemaManager
in package

SQL Server Schema Manager.

Tags
extends

AbstractSchemaManager<SQLServerPlatform>

Table of Contents

Properties

$_conn  : Connection
Holds instance of the Doctrine connection for this schema manager.
$_platform  : T
Holds instance of the database platform used for this schema manager.
$databaseCollation  : string|null

Methods

__construct()  : mixed
alterSchema()  : void
Alters an existing schema.
alterTable()  : void
Alters an existing tables schema.
createComparator()  : Comparator
createConstraint()  : void
Creates a constraint on a table.
createDatabase()  : void
Creates a new database.
createForeignKey()  : void
Creates a new foreign key.
createIndex()  : void
Creates a new index on a table.
createSchema()  : Schema
Creates a schema instance for the current database.
createSchemaConfig()  : SchemaConfig
Creates the configuration for this schema.
createSchemaObjects()  : void
createSequence()  : void
Creates a new sequence.
createTable()  : void
Creates a new table.
createUniqueConstraint()  : void
Creates a unique constraint on a table.
createView()  : void
Creates a new view.
dropAndCreateConstraint()  : void
Drops and creates a constraint.
dropAndCreateDatabase()  : void
Drops and creates a new database.
dropAndCreateForeignKey()  : void
Drops and creates a new foreign key.
dropAndCreateIndex()  : void
Drops and creates a new index on a table.
dropAndCreateSequence()  : void
Drops and create a new sequence.
dropAndCreateTable()  : void
Drops and creates a new table.
dropAndCreateView()  : void
Drops and creates a new view.
dropConstraint()  : void
Drops the constraint from the given table.
dropDatabase()  : void
Drops a database.
dropForeignKey()  : void
Drops a foreign key from a table.
dropIndex()  : void
Drops the index from the given table.
dropSchema()  : void
Drops a schema.
dropSchemaObjects()  : void
dropSequence()  : void
Drops a sequence with a given name.
dropTable()  : void
Drops the given table.
dropUniqueConstraint()  : void
Drops the unique constraint from the given table.
dropView()  : void
Drops a view.
getDatabasePlatform()  : T
Returns the associated platform.
getSchemaSearchPaths()  : array<string|int, string>
The search path for namespaces in the currently connected database.
introspectSchema()  : Schema
Returns a {@see Schema} instance representing the current database schema.
introspectTable()  : Table
Introspects the table with the given name.
listDatabases()  : array<string|int, string>
Lists the available databases for this connection.
listNamespaceNames()  : array<string|int, string>
Returns a list of all namespaces in the current database.
listSchemaNames()  : array<int, string>
Returns a list of the names of all schemata in the current database.
listSequences()  : array<string|int, Sequence>
Lists the available sequences for this connection.
listTableColumns()  : array<string|int, Column>
Lists the columns for a given table.
listTableDetails()  : Table
listTableForeignKeys()  : array<string|int, ForeignKeyConstraint>
Lists the foreign keys for the given table.
listTableIndexes()  : array<string|int, Index>
Lists the indexes for a given table returning an array of Index instances.
listTableNames()  : array<string|int, string>
Returns a list of all tables in the current database.
listTables()  : array<int, Table>
Lists the tables for this connection.
listViews()  : array<string|int, View>
Lists the views this connection has.
migrateSchema()  : void
Migrates an existing schema to a new schema.
renameTable()  : void
Renames a given table to another name.
tablesExist()  : bool
Returns true if all the given tables exist.
tryMethod()  : mixed
Tries any method on the schema manager. Normally a method throws an exception when your DBMS doesn't support it or if an error occurs.
_getPortableDatabaseDefinition()  : mixed
_getPortableDatabasesList()  : array<string|int, string>
_getPortableSequenceDefinition()  : Sequence
_getPortableSequencesList()  : array<string|int, Sequence>
_getPortableTableColumnDefinition()  : Column
Gets Table Column Definition.
_getPortableTableColumnList()  : array<string|int, Column>
Independent of the database the keys of the column list result are lowercased.
_getPortableTableDefinition()  : string
_getPortableTableForeignKeyDefinition()  : ForeignKeyConstraint
_getPortableTableForeignKeysList()  : array<string|int, ForeignKeyConstraint>
_getPortableTableIndexesList()  : array<string|int, Index>
Aggregates and groups the index results according to the required data result.
_getPortableTablesList()  : array<string|int, string>
_getPortableViewDefinition()  : View|false
_getPortableViewsList()  : array<string|int, View>
doListTableColumns()  : array<string|int, Column>
doListTableDetails()  : Table
doListTableForeignKeys()  : array<string|int, ForeignKeyConstraint>
doListTableIndexes()  : array<string|int, Index>
doListTableNames()  : array<int, string>
doListTables()  : array<int, Table>
fetchForeignKeyColumnsByTable()  : array<string, array<int, array<string, mixed>>>
Fetches definitions of foreign key columns in the specified database and returns them grouped by table name.
fetchIndexColumnsByTable()  : array<string, array<int, array<string, mixed>>>
Fetches definitions of index columns in the specified database and returns them grouped by table name.
fetchTableColumnsByTable()  : array<string, array<int, array<string, mixed>>>
Fetches definitions of table columns in the specified database and returns them grouped by table name.
fetchTableOptionsByTable()  : array<string, array<string, mixed>>
Fetches table options for the tables in the specified database and returns them grouped by table name.
filterAssetNames()  : array<string|int, mixed>
Filters asset names if they are configured to return only a subset of all the found elements.
getPortableNamespaceDefinition()  : mixed
Converts a namespace definition from the native DBMS data definition to a portable Doctrine definition.
getPortableNamespacesList()  : array<string|int, string>
Converts a list of namespace names from the native DBMS data definition to a portable Doctrine definition.
normalizeName()  : string
An extension point for those platforms where case sensitivity of the object name depends on whether it's quoted.
selectForeignKeyColumns()  : Result
Selects definitions of foreign key columns in the specified database. If the table name is specified, narrows down the selection to this table.
selectIndexColumns()  : Result
Selects definitions of index columns in the specified database. If the table name is specified, narrows down the selection to this table.
selectTableColumns()  : Result
Selects definitions of table columns in the specified database. If the table name is specified, narrows down the selection to this table.
selectTableNames()  : Result
Selects names of tables in the specified database.
fetchAllAssociativeGrouped()  : array<string, array<int, array<string, mixed>>>
getColumnConstraints()  : iterable<string|int, string>
Returns the names of the constraints for a given column.
getDatabase()  : string
getDatabaseCollation()  : string
getTableWhereClause()  : string
Returns the where clause to filter schema and table name in a query.
parseDefaultExpression()  : string|null

Properties

$_conn

Holds instance of the Doctrine connection for this schema manager.

protected Connection $_conn

$_platform

Holds instance of the database platform used for this schema manager.

protected T $_platform

Methods

__construct()

public __construct(Connection $connection, T $platform) : mixed
Parameters
$connection : Connection
$platform : T

createConstraint()

Creates a constraint on a table.

public createConstraint(Constraint $constraint, Table|string $table) : void
Parameters
$constraint : Constraint
$table : Table|string
Tags
deprecated

Use createIndex(), createForeignKey() or createUniqueConstraint() instead.

throws
Exception

createDatabase()

Creates a new database.

public createDatabase(string $database) : void
Parameters
$database : string

The name of the database to create.

Tags
throws
Exception

createIndex()

Creates a new index on a table.

public createIndex(Index $index, Table|string $table) : void
Parameters
$index : Index
$table : Table|string

The name of the table on which the index is to be created.

Tags
throws
Exception

dropAndCreateConstraint()

Drops and creates a constraint.

public dropAndCreateConstraint(Constraint $constraint, Table|string $table) : void
Parameters
$constraint : Constraint
$table : Table|string
Tags
deprecated

Use dropIndex() and createIndex(), dropForeignKey() and createForeignKey() or dropUniqueConstraint() and createUniqueConstraint() instead.

see
dropConstraint()
see
createConstraint()
throws
Exception

dropAndCreateDatabase()

Drops and creates a new database.

public dropAndCreateDatabase(string $database) : void
Parameters
$database : string

The name of the database to create.

Tags
deprecated

Use dropDatabase() and createDatabase() instead.

throws
Exception

dropAndCreateForeignKey()

Drops and creates a new foreign key.

public dropAndCreateForeignKey(ForeignKeyConstraint $foreignKey, Table|string $table) : void
Parameters
$foreignKey : ForeignKeyConstraint

An associative array that defines properties of the foreign key to be created.

$table : Table|string

The name of the table on which the foreign key is to be created.

Tags
deprecated

Use dropForeignKey() and createForeignKey() instead.

throws
Exception

dropAndCreateIndex()

Drops and creates a new index on a table.

public dropAndCreateIndex(Index $index, Table|string $table) : void
Parameters
$index : Index
$table : Table|string

The name of the table on which the index is to be created.

Tags
deprecated

Use dropIndex() and createIndex() instead.

throws
Exception

dropAndCreateSequence()

Drops and create a new sequence.

public dropAndCreateSequence(Sequence $sequence) : void
Parameters
$sequence : Sequence
Tags
deprecated

Use dropSequence() and createSequence() instead.

throws
Exception

dropAndCreateTable()

Drops and creates a new table.

public dropAndCreateTable(Table $table) : void
Parameters
$table : Table
Tags
deprecated

Use dropTable() and createTable() instead.

throws
Exception

dropAndCreateView()

Drops and creates a new view.

public dropAndCreateView(View $view) : void
Parameters
$view : View
Tags
deprecated

Use dropView() and createView() instead.

throws
Exception

dropConstraint()

Drops the constraint from the given table.

public dropConstraint(Constraint $constraint, Table|string $table) : void
Parameters
$constraint : Constraint
$table : Table|string

The name of the table.

Tags
deprecated

Use dropIndex(), dropForeignKey() or dropUniqueConstraint() instead.

throws
Exception

dropDatabase()

Drops a database.

public dropDatabase(string $database) : void

NOTE: You can not drop the database this SchemaManager is currently connected to.

Parameters
$database : string

The name of the database to drop.

Tags
throws
Exception

dropIndex()

Drops the index from the given table.

public dropIndex(Index|string $index, Table|string $table) : void
Parameters
$index : Index|string

The name of the index.

$table : Table|string

The name of the table.

Tags
throws
Exception

dropSequence()

Drops a sequence with a given name.

public dropSequence(string $name) : void
Parameters
$name : string

The name of the sequence to drop.

Tags
throws
Exception

dropTable()

Drops the given table.

public dropTable(string $name) : void
Parameters
$name : string

The name of the table to drop.

Tags
throws
Exception

dropUniqueConstraint()

Drops the unique constraint from the given table.

public dropUniqueConstraint(string $name, string $tableName) : void
Parameters
$name : string
$tableName : string
Tags
throws
Exception

getDatabasePlatform()

Returns the associated platform.

public getDatabasePlatform() : T
Tags
deprecated

Use instead.

Return values
T

getSchemaSearchPaths()

The search path for namespaces in the currently connected database.

public getSchemaSearchPaths() : array<string|int, string>

The first entry is usually the default namespace in the Schema. All further namespaces contain tables/sequences which can also be addressed with a short, not full-qualified name.

For databases that don't support subschema/namespaces this method returns the name of the currently connected database.

Tags
deprecated
throws
Exception
Return values
array<string|int, string>

listDatabases()

Lists the available databases for this connection.

public listDatabases() : array<string|int, string>
Tags
throws
Exception
Return values
array<string|int, string>

listNamespaceNames()

Returns a list of all namespaces in the current database.

public listNamespaceNames() : array<string|int, string>
Tags
deprecated

Use listSchemaNames() instead.

throws
Exception
Return values
array<string|int, string>

listSchemaNames()

Returns a list of the names of all schemata in the current database.

public listSchemaNames() : array<int, string>
Return values
array<int, string>

listSequences()

Lists the available sequences for this connection.

public listSequences([string|null $database = null ]) : array<string|int, Sequence>
Parameters
$database : string|null = null
Tags
throws
Exception
Return values
array<string|int, Sequence>

listTableColumns()

Lists the columns for a given table.

public listTableColumns(mixed $table[, mixed $database = null ]) : array<string|int, Column>
Parameters
$table : mixed

The name of the table.

$database : mixed = null
Return values
array<string|int, Column>

listTableDetails()

public listTableDetails(mixed $name) : Table
Parameters
$name : mixed
Tags
deprecated

Use introspectTable() instead.

Return values
Table

listTableForeignKeys()

Lists the foreign keys for the given table.

public listTableForeignKeys(mixed $table[, mixed $database = null ]) : array<string|int, ForeignKeyConstraint>
Parameters
$table : mixed

The name of the table.

$database : mixed = null
Return values
array<string|int, ForeignKeyConstraint>

listTableIndexes()

Lists the indexes for a given table returning an array of Index instances.

public listTableIndexes(mixed $table) : array<string|int, Index>
Parameters
$table : mixed

The name of the table.

Return values
array<string|int, Index>

listTableNames()

Returns a list of all tables in the current database.

public listTableNames() : array<string|int, string>
Return values
array<string|int, string>

renameTable()

Renames a given table to another name.

public renameTable(string $name, string $newName) : void
Parameters
$name : string

The current name of the table.

$newName : string

The new name of the table.

Tags
throws
Exception

tablesExist()

Returns true if all the given tables exist.

public tablesExist(string|array<string|int, string> $names) : bool

The usage of a string $tableNames is deprecated. Pass a one-element array instead.

Parameters
$names : string|array<string|int, string>
Tags
throws
Exception
Return values
bool

tryMethod()

Tries any method on the schema manager. Normally a method throws an exception when your DBMS doesn't support it or if an error occurs.

public tryMethod() : mixed

This method allows you to try and method on your SchemaManager instance and will return false if it does not work or is not supported.

$result = $sm->tryMethod('dropView', 'view_name');
Tags
deprecated

_getPortableDatabaseDefinition()

protected _getPortableDatabaseDefinition(mixed $database) : mixed
Parameters
$database : mixed

_getPortableDatabasesList()

protected _getPortableDatabasesList(array<string|int, mixed> $databases) : array<string|int, string>
Parameters
$databases : array<string|int, mixed>
Return values
array<string|int, string>

_getPortableSequencesList()

protected _getPortableSequencesList(array<string|int, array<string|int, mixed>> $sequences) : array<string|int, Sequence>
Parameters
$sequences : array<string|int, array<string|int, mixed>>
Tags
throws
Exception
Return values
array<string|int, Sequence>

_getPortableTableColumnDefinition()

Gets Table Column Definition.

protected _getPortableTableColumnDefinition(mixed $tableColumn) : Column
Parameters
$tableColumn : mixed
Return values
Column

_getPortableTableColumnList()

Independent of the database the keys of the column list result are lowercased.

protected _getPortableTableColumnList(string $table, string $database, array<string|int, array<string|int, mixed>> $tableColumns) : array<string|int, Column>

The name of the created column instance however is kept in its case.

Parameters
$table : string

The name of the table.

$database : string
$tableColumns : array<string|int, array<string|int, mixed>>
Tags
throws
Exception
Return values
array<string|int, Column>

_getPortableTableDefinition()

protected _getPortableTableDefinition(mixed $table) : string
Parameters
$table : mixed
Return values
string

_getPortableTableIndexesList()

Aggregates and groups the index results according to the required data result.

protected _getPortableTableIndexesList(mixed $tableIndexes[, mixed $tableName = null ]) : array<string|int, Index>
Parameters
$tableIndexes : mixed
$tableName : mixed = null
Return values
array<string|int, Index>

_getPortableTablesList()

protected _getPortableTablesList(array<string|int, array<string|int, mixed>> $tables) : array<string|int, string>
Parameters
$tables : array<string|int, array<string|int, mixed>>
Return values
array<string|int, string>

_getPortableViewDefinition()

protected _getPortableViewDefinition(mixed $view) : View|false
Parameters
$view : mixed
Return values
View|false

_getPortableViewsList()

protected _getPortableViewsList(array<string|int, array<string|int, mixed>> $views) : array<string|int, View>
Parameters
$views : array<string|int, array<string|int, mixed>>
Return values
array<string|int, View>

doListTableColumns()

protected doListTableColumns(string $table[, string|null $database = null ]) : array<string|int, Column>
Parameters
$table : string
$database : string|null = null
Tags
throws
Exception
Return values
array<string|int, Column>

fetchForeignKeyColumnsByTable()

Fetches definitions of foreign key columns in the specified database and returns them grouped by table name.

protected fetchForeignKeyColumnsByTable(string $databaseName) : array<string, array<int, array<string, mixed>>>
Parameters
$databaseName : string
Tags
throws
Exception
Return values
array<string, array<int, array<string, mixed>>>

fetchIndexColumnsByTable()

Fetches definitions of index columns in the specified database and returns them grouped by table name.

protected fetchIndexColumnsByTable(string $databaseName) : array<string, array<int, array<string, mixed>>>
Parameters
$databaseName : string
Tags
throws
Exception
Return values
array<string, array<int, array<string, mixed>>>

fetchTableColumnsByTable()

Fetches definitions of table columns in the specified database and returns them grouped by table name.

protected fetchTableColumnsByTable(string $databaseName) : array<string, array<int, array<string, mixed>>>
Parameters
$databaseName : string
Tags
throws
Exception
Return values
array<string, array<int, array<string, mixed>>>

fetchTableOptionsByTable()

Fetches table options for the tables in the specified database and returns them grouped by table name.

protected fetchTableOptionsByTable(string $databaseName[, string|null $tableName = null ]) : array<string, array<string, mixed>>
Parameters
$databaseName : string
$tableName : string|null = null
Return values
array<string, array<string, mixed>>

filterAssetNames()

Filters asset names if they are configured to return only a subset of all the found elements.

protected filterAssetNames(array<string|int, mixed> $assetNames) : array<string|int, mixed>
Parameters
$assetNames : array<string|int, mixed>
Return values
array<string|int, mixed>

getPortableNamespaceDefinition()

Converts a namespace definition from the native DBMS data definition to a portable Doctrine definition.

protected getPortableNamespaceDefinition(array<string|int, mixed> $namespace) : mixed
Parameters
$namespace : array<string|int, mixed>

The native DBMS namespace definition.

Tags
deprecated

Use listSchemaNames() instead.

getPortableNamespacesList()

Converts a list of namespace names from the native DBMS data definition to a portable Doctrine definition.

protected getPortableNamespacesList(array<int, array<string, mixed>> $namespaces) : array<string|int, string>
Parameters
$namespaces : array<int, array<string, mixed>>

The list of namespace names in the native DBMS data definition.

Tags
deprecated

Use listSchemaNames() instead.

Return values
array<string|int, string>

normalizeName()

An extension point for those platforms where case sensitivity of the object name depends on whether it's quoted.

protected normalizeName(string $name) : string

Such platforms should convert a possibly quoted name into a value of the corresponding case.

Parameters
$name : string
Return values
string

selectForeignKeyColumns()

Selects definitions of foreign key columns in the specified database. If the table name is specified, narrows down the selection to this table.

protected selectForeignKeyColumns(string $databaseName[, string|null $tableName = null ]) : Result
Parameters
$databaseName : string
$tableName : string|null = null
Return values
Result

selectIndexColumns()

Selects definitions of index columns in the specified database. If the table name is specified, narrows down the selection to this table.

protected selectIndexColumns(string $databaseName[, string|null $tableName = null ]) : Result
Parameters
$databaseName : string
$tableName : string|null = null
Return values
Result

selectTableColumns()

Selects definitions of table columns in the specified database. If the table name is specified, narrows down the selection to this table.

protected selectTableColumns(string $databaseName[, string|null $tableName = null ]) : Result
Parameters
$databaseName : string
$tableName : string|null = null
Return values
Result

selectTableNames()

Selects names of tables in the specified database.

protected selectTableNames(string $databaseName) : Result
Parameters
$databaseName : string
Return values
Result

fetchAllAssociativeGrouped()

private fetchAllAssociativeGrouped(Result $result) : array<string, array<int, array<string, mixed>>>
Parameters
$result : Result
Tags
throws
Exception
Return values
array<string, array<int, array<string, mixed>>>

getColumnConstraints()

Returns the names of the constraints for a given column.

private getColumnConstraints(string $table, string $column) : iterable<string|int, string>
Parameters
$table : string
$column : string
Tags
throws
Exception
Return values
iterable<string|int, string>

getDatabase()

private getDatabase(string $methodName) : string
Parameters
$methodName : string
Tags
throws
Exception
Return values
string

getTableWhereClause()

Returns the where clause to filter schema and table name in a query.

private getTableWhereClause(string $table, string $schemaColumn, string $tableColumn) : string
Parameters
$table : string

The full qualified name of the table.

$schemaColumn : string

The name of the column to compare the schema to in the where clause.

$tableColumn : string

The name of the column to compare the table to in the where clause.

Return values
string

parseDefaultExpression()

private parseDefaultExpression(string $value) : string|null
Parameters
$value : string
Return values
string|null

        
On this page

Search results