class OdbcDriver implements Driver, ResultDriver, Reflector

The dibi driver interacting with databases via ODBC connections.

Driver options:

  • dsn => driver specific DSN
  • username (or user)
  • password (or pass)
  • persistent (bool) => try to find a persistent link?
  • resource (resource) => existing connection resource
  • lazy, profiler, result, substitutes, ... => see Dibi\Connection options

Methods

__construct()

No description

void
connect(array $config)

Connects to a database.

void
disconnect()

Disconnects from a database.

query($sql)

Executes the SQL query.

int|false
getAffectedRows()

Gets the number of affected rows by the last INSERT, UPDATE or DELETE query.

int|false
getInsertId($sequence)

Retrieves the ID generated for an AUTO_INCREMENT column by the previous INSERT query.

void
begin($savepoint = NULL)

Begins a transaction (if supported).

void
commit($savepoint = NULL)

Commits statements in a transaction.

void
rollback($savepoint = NULL)

Rollback changes in a transaction.

bool
inTransaction()

Is in transaction?

mixed
getResource()

Returns the connection resource.

getReflector()

Returns the connection reflector.

createResultDriver($resource)

Result set driver factory.

string
escapeText($value)

Encodes data for use in a SQL statement.

string
escapeBinary($value)

No description

string
escapeIdentifier($value)

No description

string
escapeBool($value)

No description

string
escapeDate($value)

No description

string
escapeDateTime($value)

No description

string
escapeLike($value, $pos)

Encodes string for use in a LIKE statement.

string
unescapeBinary($value)

Decodes data from result set.

escape($value, $type) deprecated

No description

void
applyLimit($sql, $limit, $offset)

Injects LIMIT/OFFSET to the SQL query.

void
__destruct()

Automatically frees the resources allocated for this result set.

int
getRowCount()

Returns the number of rows in a result set.

array
fetch($assoc)

Fetches the row at current position and moves the internal cursor to the next position.

bool
seek($row)

Moves cursor position without fetching row.

void
free()

Frees the resources allocated for this result set.

array
getResultColumns()

Returns metadata for all columns in a result set.

mixed
getResultResource()

Returns the result set resource.

array
getTables()

Returns list of tables.

array
getColumns($table)

Returns metadata for all columns in a table.

array
getIndexes($table)

Returns metadata for all indexes in a table.

array
getForeignKeys($table)

Returns metadata for all foreign keys in a table.

Details

at line 47
__construct()

No description

at line 60
void connect(array $config)

Connects to a database.

Parameters

array $config

Return Value

void

Exceptions

Exception

at line 89
void disconnect()

Disconnects from a database.

Return Value

void

at line 101
ResultDriver|null query($sql)

Executes the SQL query.

Parameters

$sql

Return Value

ResultDriver|null

Exceptions

DriverException

at line 121
int|false getAffectedRows()

Gets the number of affected rows by the last INSERT, UPDATE or DELETE query.

Return Value

int|false

number of rows or FALSE on error

at line 131
int|false getInsertId($sequence)

Retrieves the ID generated for an AUTO_INCREMENT column by the previous INSERT query.

Parameters

$sequence

Return Value

int|false

int on success or FALSE on failure

at line 143
void begin($savepoint = NULL)

Begins a transaction (if supported).

Parameters

$savepoint

Return Value

void

Exceptions

DriverException

at line 157
void commit($savepoint = NULL)

Commits statements in a transaction.

Parameters

$savepoint

Return Value

void

Exceptions

DriverException

at line 172
void rollback($savepoint = NULL)

Rollback changes in a transaction.

Parameters

$savepoint

Return Value

void

Exceptions

DriverException

at line 185
bool inTransaction()

Is in transaction?

Return Value

bool

at line 195
mixed getResource()

Returns the connection resource.

Return Value

mixed

at line 205
Reflector getReflector()

Returns the connection reflector.

Return Value

Reflector

at line 216
ResultDriver createResultDriver($resource)

Result set driver factory.

Parameters

$resource

Return Value

ResultDriver

at line 232
string escapeText($value)

Encodes data for use in a SQL statement.

Parameters

$value

Return Value

string

encoded value

at line 242
string escapeBinary($value)

No description

Parameters

$value

Return Value

string

at line 252
string escapeIdentifier($value)

No description

Parameters

$value

Return Value

string

at line 262
string escapeBool($value)

No description

Parameters

$value

Return Value

string

at line 272
string escapeDate($value)

No description

Parameters

$value

Return Value

string

at line 285
string escapeDateTime($value)

No description

Parameters

$value

Return Value

string

at line 300
string escapeLike($value, $pos)

Encodes string for use in a LIKE statement.

Parameters

$value
$pos

Return Value

string

at line 312
string unescapeBinary($value)

Decodes data from result set.

Parameters

$value

Return Value

string

at line 319
escape($value, $type) deprecated

deprecated

No description

Parameters

$value
$type

at line 333
void applyLimit($sql, $limit, $offset)

Injects LIMIT/OFFSET to the SQL query.

Parameters

$sql
$limit
$offset

Return Value

void

at line 354
void __destruct()

Automatically frees the resources allocated for this result set.

Return Value

void

at line 364
int getRowCount()

Returns the number of rows in a result set.

Return Value

int

at line 376
array fetch($assoc)

Fetches the row at current position and moves the internal cursor to the next position.

Parameters

$assoc

Return Value

array

array on success, nonarray if no next record

at line 400
bool seek($row)

Moves cursor position without fetching row.

Parameters

$row

Return Value

bool

TRUE on success, FALSE if unable to seek to specified record

at line 411
void free()

Frees the resources allocated for this result set.

Return Value

void

at line 422
array getResultColumns()

Returns metadata for all columns in a result set.

Return Value

array

of {name, nativetype [, table, fullname, (int) size, (bool) nullable, (mixed) default, (bool) autoincrement, (array) vendor ]}

at line 442
mixed getResultResource()

Returns the result set resource.

Return Value

mixed

at line 456
array getTables()

Returns list of tables.

Return Value

array

of {name [, (bool) view ]}

at line 478
array getColumns($table)

Returns metadata for all columns in a table.

Parameters

$table

Return Value

array

of {name, nativetype [, table, fullname, (int) size, (bool) nullable, (mixed) default, (bool) autoincrement, (array) vendor ]}

at line 504
array getIndexes($table)

Returns metadata for all indexes in a table.

Parameters

$table

Return Value

array

of {name, (array of names) columns [, (bool) unique, (bool) primary ]}

at line 515
array getForeignKeys($table)

Returns metadata for all foreign keys in a table.

Parameters

$table

Return Value

array

Traits

Better OOP experience.