Documentation

Comparator extends Comparator
in package

Compares schemas in the context of SQL Server platform.

Tags
link
https://docs.microsoft.com/en-us/sql/t-sql/statements/collations?view=sql-server-ver15

Table of Contents

Properties

$databaseCollation  : string
$platform  : AbstractPlatform|null

Methods

__call()  : SchemaDiff
__callStatic()  : SchemaDiff
compare()  : SchemaDiff
compareSchemas()  : SchemaDiff
compareTables()  : TableDiff
Compares the tables and returns the difference between them.
diffColumn()  : array<string|int, string>
Returns the difference between the columns
diffSequence()  : bool
diffTable()  : TableDiff|false
Returns the difference between the tables $fromTable and $toTable.
detectRenamedColumns()  : array<string, Column>
Try to find columns that only changed their name, rename operations maybe cheaper than add/drop however ambiguities between different possibilities should not lead to renaming at all.
detectRenamedIndexes()  : array<string, Index>
Try to find indexes that only changed their name, rename operations maybe cheaper than add/drop however ambiguities between different possibilities should not lead to renaming at all.
doCompareSchemas()  : SchemaDiff
Returns a SchemaDiff object containing the differences between the schemas $fromSchema and $toSchema.
isAutoIncrementSequenceInSchema()  : bool
normalizeColumns()  : Table

Properties

$databaseCollation

private string $databaseCollation

Methods

__call()

public __call(string $method, array<int, mixed> $args) : SchemaDiff
Parameters
$method : string
$args : array<int, mixed>
Return values
SchemaDiff

__callStatic()

public static __callStatic(string $method, array<int, mixed> $args) : SchemaDiff
Parameters
$method : string
$args : array<int, mixed>
Return values
SchemaDiff

diffColumn()

Returns the difference between the columns

public diffColumn(Column $column1, Column $column2) : array<string|int, string>

If there are differences this method returns the changed properties as a string array, otherwise an empty array gets returned.

Parameters
$column1 : Column
$column2 : Column
Tags
deprecated

Use columnsEqual() instead.

Return values
array<string|int, string>

detectRenamedColumns()

Try to find columns that only changed their name, rename operations maybe cheaper than add/drop however ambiguities between different possibilities should not lead to renaming at all.

private detectRenamedColumns(array<string, Column&$addedColumns, array<string, Column&$removedColumns) : array<string, Column>
Parameters
$addedColumns : array<string, Column>
$removedColumns : array<string, Column>
Tags
throws
Exception
Return values
array<string, Column>

detectRenamedIndexes()

Try to find indexes that only changed their name, rename operations maybe cheaper than add/drop however ambiguities between different possibilities should not lead to renaming at all.

private detectRenamedIndexes(array<string, Index&$addedIndexes, array<string, Index&$removedIndexes) : array<string, Index>
Parameters
$addedIndexes : array<string, Index>
$removedIndexes : array<string, Index>
Return values
array<string, Index>

doCompareSchemas()

Returns a SchemaDiff object containing the differences between the schemas $fromSchema and $toSchema.

private doCompareSchemas(Schema $fromSchema, Schema $toSchema) : SchemaDiff

This method should be called non-statically since it will be declared as non-static in the next major release.

Parameters
$fromSchema : Schema
$toSchema : Schema
Tags
throws
SchemaException
Return values
SchemaDiff

        
On this page

Search results