Propel API
Interface

PropelPlatformInterface

interface PropelPlatformInterface

Interface for RDBMS platform specific behaviour.

Constants

IDENTITY

Constant for auto-increment id method.

SEQUENCE

Constant for sequence id method.

SERIAL

Constant for serial id method (postgresql).

Methods

setConnection(PDO $con = null)

Sets a database connection to use (for quoting, etc.).

PDO getConnection()

Returns the database connection to use for this Platform class.

setGeneratorConfig(GeneratorConfig $config)

Sets the GeneratorConfig which contains any generator build properties.

string getDatabaseType()

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

string getNativeIdMethod()

Returns the native IdMethod (sequence|identity)

int getMaxColumnNameLength()

Returns the max column length supported by the db.

Domain getDomainForType(string $propelType)

Returns the db specific domain for a propelType.

string getNullString($notNull)

The getAutoIncrement()

string getColumnDDL(Column $col)

Returns the DDL SQL for a Column object.

string getColumnDefaultValueDDL(Column $col)

Returns the SQL for the default value of a Column object.

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

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

string getPrimaryKeyDDL(Table $table)

Returns the SQL for the primary key of a Table object

boolean hasSize(string $sqlType)

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

boolean hasScale(string $sqlType)

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

string quote(string $text)

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

string quoteIdentifier(string $text)

Quotes identifiers used in database SQL.

boolean supportsNativeDeleteTrigger()

Whether RDBMS supports native ON DELETE triggers (e.g.

boolean supportsInsertNullPk()

Whether RDBMS supports INSERT null values in autoincremented primary keys

boolean supportsSchemas()

Whether RDBMS supports native schemas for table layout.

boolean supportsMigrations()

Whether RDBMS supports migrations.

boolean supportsVarcharWithoutSize()

Wether RDBMS supports VARCHAR without explicit size

mixed getBooleanString(mixed $tf)

Returns the boolean value for the RDBMS.

boolean hasStreamBlobImpl()

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

string getTimestampFormatter()

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

string getDateFormatter()

Gets the preferred date formatter for setting time values.

string getTimeFormatter()

Gets the preferred time formatter for setting time values.

Details

at line 41
public setConnection(PDO $con = null)

Sets a database connection to use (for quoting, etc.).

Parameters

PDO $con The database connection to use in this Platform class.

at line 47
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 54
public setGeneratorConfig(GeneratorConfig $config)

Sets the GeneratorConfig which contains any generator build properties.

Parameters

GeneratorConfig $config

at line 61
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 68
public string getNativeIdMethod()

Returns the native IdMethod (sequence|identity)

Return Value

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

at line 75
public int getMaxColumnNameLength()

Returns the max column length supported by the db.

Return Value

int The max column length

at line 83
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.

at line 89
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 94
public The getAutoIncrement()

Return Value

The RDBMS-specific SQL fragment for autoincrement.

at line 100
public string getColumnDDL(Column $col)

Returns the DDL SQL for a Column object.

Parameters

Column $col

Return Value

string

at line 106
public string getColumnDefaultValueDDL(Column $col)

Returns the SQL for the default value of a Column object.

Parameters

Column $col

Return Value

string

at line 120
public string getColumnListDDL($columns, $delimiter = ',')

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

Parameters

$columns
$delimiter

Return Value

string

at line 126
public string getPrimaryKeyDDL(Table $table)

Returns the SQL for the primary key of a Table object

Parameters

Table $table

Return Value

string

at line 134
public boolean hasSize(string $sqlType)

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

Parameters

string $sqlType the SQL type

Return Value

boolean True if the type has a size attribute

at line 142
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

at line 149
public string quote(string $text)

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

Parameters

string $text

Return Value

string

at line 156
public string quoteIdentifier(string $text)

Quotes identifiers used in database SQL.

Parameters

string $text

Return Value

string Quoted identifier.

at line 162
public boolean supportsNativeDeleteTrigger()

Whether RDBMS supports native ON DELETE triggers (e.g.

ON DELETE CASCADE).

Return Value

boolean

at line 168
public boolean supportsInsertNullPk()

Whether RDBMS supports INSERT null values in autoincremented primary keys

Return Value

boolean

at line 174
public boolean supportsSchemas()

Whether RDBMS supports native schemas for table layout.

Return Value

boolean

at line 180
public boolean supportsMigrations()

Whether RDBMS supports migrations.

Return Value

boolean

at line 186
public boolean supportsVarcharWithoutSize()

Wether RDBMS supports VARCHAR without explicit size

Return Value

boolean

at line 200
public mixed getBooleanString(mixed $tf)

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

mixed $tf A boolean or string representation of boolean ('y', 'true').

Return Value

mixed

at line 206
public boolean hasStreamBlobImpl()

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

Return Value

boolean

at line 212
public string getTimestampFormatter()

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

Return Value

string

at line 218
public string getDateFormatter()

Gets the preferred date formatter for setting time values.

Return Value

string

at line 224
public string getTimeFormatter()

Gets the preferred time formatter for setting time values.

Return Value

string