Propel API
Class

MysqlPlatform

class MysqlPlatform extends DefaultPlatform

MySql PropelPlatformInterface implementation.

Methods

__construct(PDO $con = null)

Default constructor.

from DefaultPlatform
setConnection(PDO $con = null)

Set the database connection to use for this Platform class.

from DefaultPlatform
PDO getConnection()

Returns the database connection to use for this Platform class.

from DefaultPlatform
setGeneratorConfig(GeneratorConfig $generatorConfig)

string getDatabaseType()

Returns the short name of the database type that this platform represents.

from DefaultPlatform
getMaxColumnNameLength()

string getNativeIdMethod()

Returns the native IdMethod (sequence|identity)

from DefaultPlatform
isNativeIdMethodAutoIncrement()

from DefaultPlatform
Domain getDomainForType(string $propelType)

Returns the db specific domain for a propelType.

from DefaultPlatform
string getNullString($notNull)

from DefaultPlatform
getAutoIncrement()

string getSequenceName(Table $table)

Gets the name to use for creating a sequence for a table.

from DefaultPlatform
getAddTablesDDL(Database $database)

getBeginDDL()

getEndDDL()

getDropTableDDL(Table $table)

getAddTableDDL(Table $table)

getColumnDDL(Column $col)

string getColumnDefaultValueDDL(Column $col)

Returns the SQL for the default value of a Column object

from DefaultPlatform
string getColumnListDDL($columns, $delimiter = ',')

Creates a delimiter-delimited string list of column names, quoted using quoteIdentifier().

from DefaultPlatform
string getPrimaryKeyName(Table $table)

Returns the name of a table primary key

from DefaultPlatform
string getPrimaryKeyDDL(Table $table)

Returns the SQL for the primary key of a Table object

from DefaultPlatform
string getDropPrimaryKeyDDL(Table $table)

Builds the DDL SQL to drop the primary key of a table.

string getAddPrimaryKeyDDL(Table $table)

Builds the DDL SQL to add the primary key of a table.

from DefaultPlatform
string getAddIndicesDDL(Table $table)

Builds the DDL SQL to add the indices of a table.

from DefaultPlatform
string getAddIndexDDL(Index $index)

Builds the DDL SQL to add an Index.

string getDropIndexDDL(Index $index)

Builds the DDL SQL to drop an Index.

string getIndexDDL(Index $index)

Builds the DDL SQL for an Index object.

getUniqueDDL(Unique $unique)

string getAddForeignKeysDDL(Table $table)

Builds the DDL SQL to add the foreign keys of a table.

from DefaultPlatform
string getAddForeignKeyDDL(ForeignKey $fk)

Builds the DDL SQL to add a foreign key.

from DefaultPlatform
getDropForeignKeyDDL(ForeignKey $fk)

string getForeignKeyDDL(ForeignKey $fk)

Builds the DDL SQL for a ForeignKey object.

from DefaultPlatform
getCommentLineDDL($comment)

from DefaultPlatform
getCommentBlockDDL($comment)

string getModifyDatabaseDDL(PropelDatabaseDiff $databaseDiff)

Builds the DDL SQL to modify a database based on a PropelDatabaseDiff instance

string getRenameTableDDL($fromTableName, $toTableName)

Builds the DDL SQL to rename a table

string getModifyTableDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table based on a PropelTableDiff instance

from DefaultPlatform
string getModifyTableColumnsDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table based on a PropelTableDiff instance

from DefaultPlatform
string getModifyTablePrimaryKeyDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's primary key based on a PropelTableDiff instance

from DefaultPlatform
string getModifyTableIndicesDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's indices based on a PropelTableDiff instance

from DefaultPlatform
string getModifyTableForeignKeysDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's foreign keys based on a PropelTableDiff instance

from DefaultPlatform
string getRemoveColumnDDL(Column $column)

Builds the DDL SQL to remove a column

string getRenameColumnDDL($fromColumn, $toColumn)

Builds the DDL SQL to rename a column

string getModifyColumnDDL(PropelColumnDiff $columnDiff)

Builds the DDL SQL to modify a column

string getModifyColumnsDDL($columnDiffs)

Builds the DDL SQL to modify a list of columns

string getAddColumnDDL(Column $column)

Builds the DDL SQL to remove a column

from DefaultPlatform
string getAddColumnsDDL($columns)

Builds the DDL SQL to add a list of columns

hasSize($sqlType)

boolean hasScale(string $sqlType)

Returns if the RDBMS-specific SQL type has a scale attribute.

from DefaultPlatform
string quote(string $text)

Quote and escape needed characters in the string for unerlying RDBMS.

from DefaultPlatform
string quoteIdentifier(string $text)

MySQL documentation says that identifiers cannot contain '.'.

setIdentifierQuoting($enabled = true)

from DefaultPlatform
getIdentifierQuoting()

from DefaultPlatform
supportsNativeDeleteTrigger()

boolean supportsInsertNullPk()

Whether RDBMS supports INSERT null values in autoincremented primary keys

from DefaultPlatform
boolean hasStreamBlobImpl()

Whether the underlying PDO driver for this platform returns BLOB columns as streams (instead of strings).

from DefaultPlatform
supportsSchemas()

supportsMigrations()

from DefaultPlatform
supportsVarcharWithoutSize()

from DefaultPlatform
mixed getBooleanString($b)

Returns the boolean value for the RDBMS.

from DefaultPlatform
getPhpArrayString($stringValue)

from DefaultPlatform
getTimestampFormatter()

string getTimeFormatter()

Gets the preferred time formatter for setting date/time values.

from DefaultPlatform
string getDateFormatter()

Gets the preferred date formatter for setting date/time values.

from DefaultPlatform
getColumnBindingPHP($column, $identifier, $columnValueAccessor, $tab = ' ')

getIdentifierPhp($columnValueMutator, $connectionVariableName = '$con', $sequenceName = '', $tab = ' ')

Get the PHP snippet for getting a Pk from the database.

from DefaultPlatform
setTableEngineKeyword(string $tableEngineKeyword)

Setter for the tableEngineKeyword property

string getTableEngineKeyword()

Getter for the tableEngineKeyword property

setDefaultTableEngine(string $defaultTableEngine)

Setter for the defaultTableEngine property

string getDefaultTableEngine()

Getter for the defaultTableEngine property

string getChangeColumnDDL($fromColumn, $toColumn)

Builds the DDL SQL to change a column

getAddColumnDDLBits(Column $column)

string disconnectedEscapeText(string $text)

Escape the string for RDBMS.

Details

in DefaultPlatform at line 48
public __construct(PDO $con = null)

Default constructor.

Parameters

PDO $con Optional database connection to use in this platform.

in DefaultPlatform at line 58
public setConnection(PDO $con = null)

Set the database connection to use for this Platform class.

Parameters

PDO $con Database connection to use in this platform.

in DefaultPlatform at line 67
public PDO getConnection()

Returns the database connection to use for this Platform class.

Return Value

PDO The database connection or NULL if none has been set.

at line 53
public setGeneratorConfig(GeneratorConfig $generatorConfig)

Parameters

GeneratorConfig $generatorConfig

in DefaultPlatform at line 128
public string getDatabaseType()

Returns the short name of the database type that this platform represents.

For example MysqlPlatform->getDatabaseType() returns 'mysql'.

Return Value

string

at line 108
public getMaxColumnNameLength()

in DefaultPlatform at line 151
public string getNativeIdMethod()

Returns the native IdMethod (sequence|identity)

Return Value

string The native IdMethod (PropelPlatformInterface:IDENTITY, PropelPlatformInterface::SEQUENCE).

in DefaultPlatform at line 156
public isNativeIdMethodAutoIncrement()

in DefaultPlatform at line 168
public Domain getDomainForType(string $propelType)

Returns the db specific domain for a propelType.

Parameters

string $propelType the Propel type name.

Return Value

Domain The db specific domain.

Exceptions

EngineException

in DefaultPlatform at line 181
public string getNullString($notNull)

Parameters

$notNull

Return Value

string The RDBMS-specific SQL fragment for <code>NULL</code> or <code>NOT NULL</code>.

at line 103
public getAutoIncrement()

in DefaultPlatform at line 204
public string getSequenceName(Table $table)

Gets the name to use for creating a sequence for a table.

This will create a new name or use one specified in an id-method-parameter
tag, if specified.

Parameters

Table $table

Return Value

string Sequence name for this table.

at line 118
public getAddTablesDDL(Database $database)

Parameters

Database $database

at line 131
public getBeginDDL()

at line 140
public getEndDDL()

at line 258
public getDropTableDDL(Table $table)

Parameters

Table $table

at line 148
public getAddTableDDL(Table $table)

Parameters

Table $table

at line 265
public getColumnDDL(Column $col)

Parameters

Column $col

in DefaultPlatform at line 351
public string getColumnDefaultValueDDL(Column $col)

Returns the SQL for the default value of a Column object

Parameters

Column $col

Return Value

string

in DefaultPlatform at line 395
public string getColumnListDDL($columns, $delimiter = ',')

Creates a delimiter-delimited string list of column names, quoted using quoteIdentifier().

Parameters

$columns
$delimiter

Return Value

string

in DefaultPlatform at line 412
public string getPrimaryKeyName(Table $table)

Returns the name of a table primary key

Parameters

Table $table

Return Value

string

in DefaultPlatform at line 423
public string getPrimaryKeyDDL(Table $table)

Returns the SQL for the primary key of a Table object

Parameters

Table $table

Return Value

string

at line 359
public string getDropPrimaryKeyDDL(Table $table)

Builds the DDL SQL to drop the primary key of a table.

Parameters

Table $table

Return Value

string

in DefaultPlatform at line 454
public string getAddPrimaryKeyDDL(Table $table)

Builds the DDL SQL to add the primary key of a table.

Parameters

Table $table

Return Value

string

in DefaultPlatform at line 472
public string getAddIndicesDDL(Table $table)

Builds the DDL SQL to add the indices of a table.

Parameters

Table $table

Return Value

string

at line 376
public string getAddIndexDDL(Index $index)

Builds the DDL SQL to add an Index.

Parameters

Index $index

Return Value

string

at line 396
public string getDropIndexDDL(Index $index)

Builds the DDL SQL to drop an Index.

Parameters

Index $index

Return Value

string

at line 412
public string getIndexDDL(Index $index)

Builds the DDL SQL for an Index object.

Parameters

Index $index

Return Value

string

at line 434
public getUniqueDDL(Unique $unique)

Parameters

Unique $unique

in DefaultPlatform at line 551
public string getAddForeignKeysDDL(Table $table)

Builds the DDL SQL to add the foreign keys of a table.

Parameters

Table $table

Return Value

string

in DefaultPlatform at line 567
public string getAddForeignKeyDDL(ForeignKey $fk)

Builds the DDL SQL to add a foreign key.

Parameters

ForeignKey $fk

Return Value

string

at line 442
public getDropForeignKeyDDL(ForeignKey $fk)

Parameters

ForeignKey $fk

in DefaultPlatform at line 607
public string getForeignKeyDDL(ForeignKey $fk)

Builds the DDL SQL for a ForeignKey object.

Parameters

ForeignKey $fk

Return Value

string

in DefaultPlatform at line 633
public getCommentLineDDL($comment)

Parameters

$comment

at line 457
public getCommentBlockDDL($comment)

Parameters

$comment

at line 474
public string getModifyDatabaseDDL(PropelDatabaseDiff $databaseDiff)

Builds the DDL SQL to modify a database based on a PropelDatabaseDiff instance

Parameters

PropelDatabaseDiff $databaseDiff

Return Value

string

at line 503
public string getRenameTableDDL($fromTableName, $toTableName)

Builds the DDL SQL to rename a table

Parameters

$fromTableName
$toTableName

Return Value

string

in DefaultPlatform at line 710
public string getModifyTableDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table based on a PropelTableDiff instance

Parameters

PropelTableDiff $tableDiff

Return Value

string

in DefaultPlatform at line 775
public string getModifyTableColumnsDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table based on a PropelTableDiff instance

Parameters

PropelTableDiff $tableDiff

Return Value

string

in DefaultPlatform at line 804
public string getModifyTablePrimaryKeyDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's primary key based on a PropelTableDiff instance

Parameters

PropelTableDiff $tableDiff

Return Value

string

in DefaultPlatform at line 822
public string getModifyTableIndicesDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's indices based on a PropelTableDiff instance

Parameters

PropelTableDiff $tableDiff

Return Value

string

in DefaultPlatform at line 849
public string getModifyTableForeignKeysDDL(PropelTableDiff $tableDiff)

Builds the DDL SQL to alter a table's foreign keys based on a PropelTableDiff instance

Parameters

PropelTableDiff $tableDiff

Return Value

string

at line 520
public string getRemoveColumnDDL(Column $column)

Builds the DDL SQL to remove a column

Parameters

Column $column

Return Value

string

at line 536
public string getRenameColumnDDL($fromColumn, $toColumn)

Builds the DDL SQL to rename a column

Parameters

$fromColumn
$toColumn

Return Value

string

at line 546
public string getModifyColumnDDL(PropelColumnDiff $columnDiff)

Builds the DDL SQL to modify a column

Parameters

PropelColumnDiff $columnDiff

Return Value

string

at line 572
public string getModifyColumnsDDL($columnDiffs)

Builds the DDL SQL to modify a list of columns

Parameters

$columnDiffs

Return Value

string

in DefaultPlatform at line 960
public string getAddColumnDDL(Column $column)

Builds the DDL SQL to remove a column

Parameters

Column $column

Return Value

string

at line 612
public string getAddColumnsDDL($columns)

Builds the DDL SQL to add a list of columns

Parameters

$columns

Return Value

string

at line 644
public hasSize($sqlType)

Parameters

$sqlType

in DefaultPlatform at line 1021
public boolean hasScale(string $sqlType)

Returns if the RDBMS-specific SQL type has a scale attribute.

Parameters

string $sqlType the SQL type

Return Value

boolean True if the type has a scale attribute

in DefaultPlatform at line 1031
public string quote(string $text)

Quote and escape needed characters in the string for unerlying RDBMS.

Parameters

string $text

Return Value

string

at line 674
public string quoteIdentifier(string $text)

MySQL documentation says that identifiers cannot contain '.'.

Thus it
should be safe to split the string by '.' and quote each part individually
to allow for a <schema>.<table> or <table>.<column> syntax.

Parameters

string $text the identifier

Return Value

string the quoted identifier

in DefaultPlatform at line 1064
public setIdentifierQuoting($enabled = true)

Parameters

$enabled

in DefaultPlatform at line 1069
public getIdentifierQuoting()

at line 113
public supportsNativeDeleteTrigger()

in DefaultPlatform at line 1087
public boolean supportsInsertNullPk()

Whether RDBMS supports INSERT null values in autoincremented primary keys

Return Value

boolean

in DefaultPlatform at line 1096
public boolean hasStreamBlobImpl()

Whether the underlying PDO driver for this platform returns BLOB columns as streams (instead of strings).

Return Value

boolean

at line 639
public supportsSchemas()

See also

Platform::supportsSchemas()

in DefaultPlatform at line 1112
public supportsMigrations()

See also

Platform::supportsMigrations()

in DefaultPlatform at line 1118
public supportsVarcharWithoutSize()

in DefaultPlatform at line 1134
public mixed getBooleanString($b)

Returns the boolean value for the RDBMS.

This value should match the boolean value that is set
when using Propel's PreparedStatement::setBoolean().

This function is used to set default column values when building
SQL.

Parameters

$b

Return Value

mixed

in DefaultPlatform at line 1141
public getPhpArrayString($stringValue)

Parameters

$stringValue

at line 679
public getTimestampFormatter()

in DefaultPlatform at line 1175
public string getTimeFormatter()

Gets the preferred time formatter for setting date/time values.

Return Value

string

in DefaultPlatform at line 1184
public string getDateFormatter()

Gets the preferred date formatter for setting date/time values.

Return Value

string

at line 684
public getColumnBindingPHP($column, $identifier, $columnValueAccessor, $tab = ' ')

Parameters

$column
$identifier
$columnValueAccessor
$tab

in DefaultPlatform at line 1230
public getIdentifierPhp($columnValueMutator, $connectionVariableName = '$con', $sequenceName = '', $tab = ' ')

Get the PHP snippet for getting a Pk from the database.

Warning: duplicates logic from DBAdapter::getId().
Any code modification here must be ported there.

Typical output:
<code>
$this->id = $con->lastInsertId();
</code>

Parameters

$columnValueMutator
$connectionVariableName
$sequenceName
$tab

at line 68
public setTableEngineKeyword(string $tableEngineKeyword)

Setter for the tableEngineKeyword property

Parameters

string $tableEngineKeyword

at line 78
public string getTableEngineKeyword()

Getter for the tableEngineKeyword property

Return Value

string

at line 88
public setDefaultTableEngine(string $defaultTableEngine)

Setter for the defaultTableEngine property

Parameters

string $defaultTableEngine

at line 98
public string getDefaultTableEngine()

Getter for the defaultTableEngine property

Return Value

string

at line 555
public string getChangeColumnDDL($fromColumn, $toColumn)

Builds the DDL SQL to change a column

Parameters

$fromColumn
$toColumn

Return Value

string

at line 582
public getAddColumnDDLBits(Column $column)

Parameters

Column $column

at line 656
public string disconnectedEscapeText(string $text)

Escape the string for RDBMS.

Parameters

string $text

Return Value

string