com\setasign\SetaFramework\Database\Manager\Driver
Mysql Class Mysql
File: /SetaFramework/src/Database/Manager/Driver/Mysql.php
Class hierarchy
Summary
Properties
Methods
__construct()
Parameters
- $database : \com\setasign\SetaFramework\Database\Database
createTypeInstance()
protected Mysql::createTypeInstance (
string $columnName,
string $type,
?string $collation,
bool $allowNull,
?scalar $default,
string $extra
): \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumnstring $type,
?string $collation,
bool $allowNull,
?scalar $default,
string $extra
Creates a columnObject from the databaseType
Parameters
- $columnName : string
- $type : string
- $collation : ?string
- $allowNull : bool
- $default : ?scalar
- $extra : string
getAlterDefinition()
public Mysql::getAlterDefinition (
string $originalTableName,
array{columnOrder: string[], addColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], modifyColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], changeColumns: array<string, array{oldName: string, column: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn}>, dropColumns: string[], addKeys: array<string, array{type: string, columns: string[]}>, dropKeys: string[], changeTableName: string|false, changeEngine: string|false, changeTableCollation: string|false} $changes
): stringarray{columnOrder: string[], addColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], modifyColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], changeColumns: array<string, array{oldName: string, column: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn}>, dropColumns: string[], addKeys: array<string, array{type: string, columns: string[]}>, dropKeys: string[], changeTableName: string|false, changeEngine: string|false, changeTableCollation: string|false} $changes
Returns the sql command for alter the table.
$changes: all entries are arrays, following keys are used:
| Key | Description |
|---|---|
| addColumns & modifyColumns | value = AbstractColumn $column |
| changeColumns | key = string $oldColumnName; value = AbstractColumn $column |
| dropColumns | value = string $columnName |
| addKeys | key = string $indexName; value = array('type' => int $indexType; 'columns' => string[] $columns) |
| dropKeys | value = string $indexName |
Parameters
- $originalTableName : string
- $changes : array{columnOrder: string[], addColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], modifyColumns: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn[], changeColumns: array<string, array{oldName: string, column: \com\setasign\SetaFramework\Database\Manager\Column\AbstractColumn}>, dropColumns: string[], addKeys: array<string, array{type: string, columns: string[]}>, dropKeys: string[], changeTableName: string|false, changeEngine: string|false, changeTableCollation: string|false}
Exceptions
getColumnDefinition()
Returns the column definition for the column as string.
Parameters
getCreateDefinition()
Returns the sql command for creating the table
Parameters
- $tableSchema : \com\setasign\SetaFramework\Database\Manager\TableSchema
- $ifNotExist : bool
Exceptions
getDatabase()
public \com\setasign\SetaFramework\Database\Manager\AbstractManager::getDatabase (
void
): \com\setasign\SetaFramework\Database\DatabaseReturns the database instance.
getTableSchema()
public Mysql::getTableSchema (
string $tableName
): \com\setasign\SetaFramework\Database\Manager\TableSchemaReturns the tableSchema for the table.
The table must already exist in the database.
Parameters
- $tableName : string
getTypeName()
Returns the columnType for the db from the columnObject
Parameters
renameTable()
Renames a table.
Mustn't be used if there exists a tableSchema for the table! (Only in TableSchema::rename)
Parameters
- $oldTableName : string
- $newTableName : string
