Db/Adapter/Mysqli.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled
with this package in the file LICENSE.txt.
It is also available through the world-wide-web at this URL:
http://framework.zend.com/license/new-bsd
If you did not receive a copy of the license and are unable to
obtain it through the world-wide-web, please send an email
to license@zend.com so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Db
- Subpackage
- Adapter
- Version
- $Id$
\Zend_Db_Adapter_Mysqli
Package: Zend_Db\Adapter




Returns


Returns
Details


Class for connecting to SQL databases and performing common operations.
- Parent(s)
- \Zend_Db_Adapter_Abstract
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties

string $_defaultStmtClass = 'Zend_Db_Statement_Mysqli'Default class name for a DB statement.
Default value
'Zend_Db_Statement_Mysqli'Details- Type
- string

array $_numericDataTypes = array(\Zend_Db::INT_TYPE => \Zend_Db::INT_TYPE, \Zend_Db::BIGINT_TYPE => \Zend_Db::BIGINT_TYPE, \Zend_Db::FLOAT_TYPE => \Zend_Db::FLOAT_TYPE, 'INT' => \Zend_Db::INT_TYPE, 'INTEGER' => \Zend_Db::INT_TYPE, 'MEDIUMINT' => \Zend_Db::INT_TYPE, 'SMALLINT' => \Zend_Db::INT_TYPE, 'TINYINT' => \Zend_Db::INT_TYPE, 'BIGINT' => \Zend_Db::BIGINT_TYPE, 'SERIAL' => \Zend_Db::BIGINT_TYPE, 'DEC' => \Zend_Db::FLOAT_TYPE, 'DECIMAL' => \Zend_Db::FLOAT_TYPE, 'DOUBLE' => \Zend_Db::FLOAT_TYPE, 'DOUBLE PRECISION' => \Zend_Db::FLOAT_TYPE, 'FIXED' => \Zend_Db::FLOAT_TYPE, 'FLOAT' => \Zend_Db::FLOAT_TYPE)Keys are UPPERCASE SQL datatypes or the constants
Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE.
Values are:
0 = 32-bit integer
1 = 64-bit integer
2 = float or decimal
Default valuearray(\Zend_Db::INT_TYPE => \Zend_Db::INT_TYPE, \Zend_Db::BIGINT_TYPE => \Zend_Db::BIGINT_TYPE, \Zend_Db::FLOAT_TYPE => \Zend_Db::FLOAT_TYPE, 'INT' => \Zend_Db::INT_TYPE, 'INTEGER' => \Zend_Db::INT_TYPE, 'MEDIUMINT' => \Zend_Db::INT_TYPE, 'SMALLINT' => \Zend_Db::INT_TYPE, 'TINYINT' => \Zend_Db::INT_TYPE, 'BIGINT' => \Zend_Db::BIGINT_TYPE, 'SERIAL' => \Zend_Db::BIGINT_TYPE, 'DEC' => \Zend_Db::FLOAT_TYPE, 'DECIMAL' => \Zend_Db::FLOAT_TYPE, 'DOUBLE' => \Zend_Db::FLOAT_TYPE, 'DOUBLE PRECISION' => \Zend_Db::FLOAT_TYPE, 'FIXED' => \Zend_Db::FLOAT_TYPE, 'FLOAT' => \Zend_Db::FLOAT_TYPE)Details- Type
- array
Methods

_connect() : voidCreates a connection to the database.
Throws
| Exception | Description |
|---|---|
| \Zend_Db_Adapter_Mysqli_Exception |

_quote(mixed $value) : stringQuote a raw string.
Parameters
Returns
| Name | Type | Description |
|---|---|---|
| $value | mixed | Raw string |
| Type | Description |
|---|---|
| string | Quoted string |

describeTable(string $tableName, string $schemaName = null) : arrayReturns the column descriptions for a table.
The return value is an associative array keyed by the column name,
as returned by the RDBMS.
The value of each array element is an associative array
with the following keys:
SCHEMA_NAME => string; name of database or schema
TABLE_NAME => string;
COLUMN_NAME => string; column name
COLUMN_POSITION => number; ordinal position of column in table
DATA_TYPE => string; SQL datatype name of column
DEFAULT => string; default expression of column, null if none
NULLABLE => boolean; true if column can have nulls
LENGTH => number; length of CHAR/VARCHAR
SCALE => number; scale of NUMERIC/DECIMAL
PRECISION => number; precision of NUMERIC/DECIMAL
UNSIGNED => boolean; unsigned property of an integer type
PRIMARY => boolean; true if column is part of the primary key
PRIMARY_POSITION => integer; position of column in primary key
IDENTITY => integer; true if column is auto-generated with unique values
Parameters| Name | Type | Description |
|---|---|---|
| $tableName | string | |
| $schemaName | string | OPTIONAL |
| Type | Description |
|---|---|
| array |

getQuoteIdentifierSymbol() : stringReturns the symbol the adapter uses for delimiting identifiers.
Returns
| Type | Description |
|---|---|
| string |

lastInsertId(string $tableName = null, string $primaryKey = null) : stringGets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column.
As a convention, on RDBMS brands that support sequences
(e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence
from the arguments and returns the last id generated by that sequence.
On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method
returns the last value generated for such a column, and the table name
argument is disregarded.
MySQL does not support sequences, so $tableName and $primaryKey are ignored.
Parameters| Name | Type | Description |
|---|---|---|
| $tableName | string | OPTIONAL Name of table. |
| $primaryKey | string | OPTIONAL Name of primary key column. |
| Type | Description |
|---|---|
| string |
- Todo
- Return value should be int?

limit(string $sql, int $count, int $offset = 0) : stringAdds an adapter-specific LIMIT clause to the SELECT statement.
Parameters
Returns
| Name | Type | Description |
|---|---|---|
| $sql | string | |
| $count | int | |
| $offset | int | OPTIONAL |
| Type | Description |
|---|---|
| string |

prepare(string $sql) : \Zend_Db_Statement_MysqliPrepare a statement and return a PDOStatement-like object.
Parameters
Returns
| Name | Type | Description |
|---|---|---|
| $sql | string | SQL query |
| Type | Description |
|---|---|
| \Zend_Db_Statement_Mysqli |

setFetchMode(int $mode) : voidSet the fetch mode.
Parameters
Throws
| Name | Type | Description |
|---|---|---|
| $mode | int |
| Exception | Description |
|---|---|
| \Zend_Db_Adapter_Mysqli_Exception |