interface ISupplementalDriver

Supplemental PDO database driver.

Constants

SUPPORT_SEQUENCE

SUPPORT_SELECT_UNGROUPED_COLUMNS

SUPPORT_MULTI_INSERT_AS_SELECT

SUPPORT_MULTI_COLUMN_AS_OR_COND

SUPPORT_SUBSELECT

SUPPORT_SCHEMA

Methods

void
initialize(Connection $connection, array $options)

Initializes connection.

convertException(PDOException $e)

Converts PDOException to DriverException or its descendant.

string
delimite(string $name)

Delimites identifier for use in a SQL statement.

string
formatDateTime(DateTimeInterface $value)

Formats date-time for use in a SQL statement.

string
formatDateInterval(DateInterval $value)

Formats date-time interval for use in a SQL statement.

string
formatLike(string $value, int $pos)

Encodes string for use in a LIKE statement.

void
applyLimit(string $sql, int|null $limit, int|null $offset)

Injects LIMIT/OFFSET to the SQL query.

array
getTables()

Returns list of tables as tuples [(string) name, (bool) view, [(string) fullName]]

array
getColumns(string $table)

Returns metadata for all columns in a table.

array
getIndexes(string $table)

Returns metadata for all indexes in a table.

array
getForeignKeys(string $table)

Returns metadata for all foreign keys in a table.

array
getColumnTypes(PDOStatement $statement)

Returns associative array of detected types (IStructure::FIELD_*) in result set.

bool
isSupported(string $item)

Cheks if driver supports specific property

Details

at line 29
void initialize(Connection $connection, array $options)

Initializes connection.

Parameters

Connection $connection
array $options

Return Value

void

at line 34
DriverException convertException(PDOException $e)

Converts PDOException to DriverException or its descendant.

Parameters

PDOException $e

Return Value

DriverException

at line 39
string delimite(string $name)

Delimites identifier for use in a SQL statement.

Parameters

string $name

Return Value

string

at line 44
string formatDateTime(DateTimeInterface $value)

Formats date-time for use in a SQL statement.

Parameters

DateTimeInterface $value

Return Value

string

at line 49
string formatDateInterval(DateInterval $value)

Formats date-time interval for use in a SQL statement.

Parameters

DateInterval $value

Return Value

string

at line 54
string formatLike(string $value, int $pos)

Encodes string for use in a LIKE statement.

Parameters

string $value
int $pos

Return Value

string

at line 60
void applyLimit(string $sql, int|null $limit, int|null $offset)

Injects LIMIT/OFFSET to the SQL query.

Parameters

string $sql

query that will be modified.

int|null $limit
int|null $offset

Return Value

void

at line 67
array getTables()

Returns list of tables as tuples [(string) name, (bool) view, [(string) fullName]]

Return Value

array

at line 73
array getColumns(string $table)

Returns metadata for all columns in a table.

As tuples [(string) name, (string) table, (string) nativetype, (int) size, (bool) nullable, (mixed) default, (bool) autoincrement, (bool) primary, (array) vendor]]

Parameters

string $table

Return Value

array

at line 79
array getIndexes(string $table)

Returns metadata for all indexes in a table.

As tuples [(string) name, (string[]) columns, (bool) unique, (bool) primary]

Parameters

string $table

Return Value

array

at line 85
array getForeignKeys(string $table)

Returns metadata for all foreign keys in a table.

As tuples [(string) name, (string) local, (string) table, (string) foreign]

Parameters

string $table

Return Value

array

at line 90
array getColumnTypes(PDOStatement $statement)

Returns associative array of detected types (IStructure::FIELD_*) in result set.

Parameters

PDOStatement $statement

Return Value

array

at line 96
bool isSupported(string $item)

Cheks if driver supports specific property

Parameters

string $item

self::SUPPORT_* property

Return Value

bool