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.
Class for connecting to SQL databases and performing common operations.
bool $_allowSerialization = 'true'
Weither or not that object can get serialized
bool $_autoQuoteIdentifiers = 'true'
Specifies whether the adapter automatically quotes identifiers.
If true, most SQL generated by Zend_Db classes applies identifier quoting automatically. If false, developer must quote identifiers themselves by calling quoteIdentifier().
bool $_autoReconnectOnUnserialize = 'false'
Weither or not the database should be reconnected to that adapter when waking up
integer $_caseFolding = 'Zend_Db'
Specifies the case of column names retrieved in queries Options Zend_Db::CASE_NATURAL (default) Zend_Db::CASE_LOWER Zend_Db::CASE_UPPER
array $_config = 'array'
User-provided configuration
object|resource|null $_connection = 'null'
Database connection
string $_defaultProfilerClass = 'Zend_Db_Profiler'
Default class name for the profiler object.
string $_defaultStmtClass = 'Zend_Db_Statement'
Default class name for a DB statement.
integer $_fetchMode = 'Zend_Db'
Fetch mode
array $_numericDataTypes = 'array'
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
Zend_Db_Profiler $_profiler = ''
Query profiler object, of type Zend_Db_Profiler or a subclass of that.
__construct(
array|Zend_Config $config
)
:
Constructor.
$config is an array of key/value pairs or an instance of Zend_Config containing configuration options. These options are common to most adapters:
dbname => (string) The name of the database to user username => (string) Connect to the database as this username. password => (string) Password associated with the username. host => (string) What host to connect to, defaults to localhost
Some options are used on a case-by-case basis by adapters:
port => (string) The port of the database persistent => (boolean) Whether to use a persistent connection or not, defaults to false protocol => (string) The network protocol, defaults to TCPIP caseFolding => (int) style of case-alteration used for identifiers
__sleep(
)
:
array
called when object is getting serialized This disconnects the DB object that cant be serialized
__wakeup(
)
:
void
called when object is getting unserialized
_beginTransaction(
)
:
Begin a transaction.
_checkRequiredOptions(
array $config
)
:
Check for config options that are mandatory.
Throw exceptions if any are missing.
_commit(
)
:
Commit a transaction.
_connect(
)
:
void
Creates a connection to the database.
_quote(
string $value
)
:
string
Quote a raw string.
_quoteIdentifier(
string $value, boolean $auto
=
false
)
:
string
Quote an identifier.
_quoteIdentifierAs(
string|array|Zend_Db_Expr $ident, string $alias
=
null, boolean $auto
=
false, string $as
=
AS
)
:
string
Quote an identifier and an optional alias.
_rollBack(
)
:
Roll-back a transaction.
_whereExpr(
mixed $where
)
:
string
Convert an array, string, or Zend_Db_Expr object into a string to put in a WHERE clause.
beginTransaction(
)
:
Zend_Db_Adapter_Abstract
Leave autocommit mode and begin a transaction.
closeConnection(
)
:
void
Force the connection to close.
commit(
)
:
Zend_Db_Adapter_Abstract
Commit a transaction and return to autocommit mode.
delete(
mixed $table, mixed $where
)
:
int
Deletes table rows based on a WHERE clause.
describeTable(
string $tableName, string $schemaName
=
null
)
:
array
Returns 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
fetchAll(
string|Zend_Db_Select $sql, mixed $bind
=
array, mixed $fetchMode
=
null
)
:
array
Fetches all SQL result rows as a sequential array.
Uses the current fetchMode for the adapter.
fetchAssoc(
string|Zend_Db_Select $sql, mixed $bind
=
array
)
:
array
Fetches all SQL result rows as an associative array.
The first column is the key, the entire row array is the value. You should construct the query to be sure that the first column contains unique values, or else rows with duplicate values in the first column will overwrite previous data.
fetchCol(
string|Zend_Db_Select $sql, mixed $bind
=
array
)
:
array
Fetches the first column of all SQL result rows as an array.
The first column in each row is used as the array key.
fetchOne(
string|Zend_Db_Select $sql, mixed $bind
=
array
)
:
string
Fetches the first column of the first row of the SQL result.
fetchPairs(
string|Zend_Db_Select $sql, mixed $bind
=
array
)
:
array
Fetches all SQL result rows as an array of key-value pairs.
The first column is the key, the second column is the value.
fetchRow(
string|Zend_Db_Select $sql, mixed $bind
=
array, mixed $fetchMode
=
null
)
:
array
Fetches the first row of the SQL result.
Uses the current fetchMode for the adapter.
foldCase(
string $key
)
:
string
Helper method to change the case of the strings used when returning result sets in FETCH_ASSOC and FETCH_BOTH modes.
This is not intended to be used by application code, but the method must be public so the Statement class can invoke it.
getConfig(
)
:
array
Returns the configuration variables in this adapter.
getConnection(
)
:
object|resource|null
Returns the underlying database connection object or resource.
If not presently connected, this initiates the connection.
getFetchMode(
)
:
int
Get the fetch mode.
getProfiler(
)
:
Zend_Db_Profiler
Returns the profiler for this adapter.
getQuoteIdentifierSymbol(
)
:
string
Returns the symbol the adapter uses for delimited identifiers.
getServerVersion(
)
:
string
Retrieve server version in PHP style
getStatementClass(
)
:
string
Get the default statement class.
insert(
mixed $table, array $bind
)
:
int
Inserts a table row with specified data.
isConnected(
)
:
boolean
Test if a connection is active
lastInsertId(
string $tableName
=
null, string $primaryKey
=
null
)
:
string
Gets 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.
lastSequenceId(
string $sequenceName
)
:
string
Return the most recent value from the specified sequence in the database.
This is supported only on RDBMS brands that support sequences (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null.
limit(
mixed $sql, integer $count, integer $offset
=
0
)
:
string
Adds an adapter-specific LIMIT clause to the SELECT statement.
listTables(
)
:
array
Returns a list of the tables in the database.
nextSequenceId(
string $sequenceName
)
:
string
Generate a new value from the specified sequence in the database, and return it.
This is supported only on RDBMS brands that support sequences (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null.
prepare(
string|Zend_Db_Select $sql
)
:
Zend_Db_Statement|PDOStatement
Prepare a statement and return a PDOStatement-like object.
query(
mixed $sql, mixed $bind
=
array
)
:
Zend_Db_Statement_Interface
Prepares and executes an SQL statement with bound data.
quote(
mixed $value, mixed $type
=
null
)
:
mixed
Safely quotes a value for an SQL statement.
If an array is passed as the value, the array values are quoted and then returned as a comma-separated string.
quoteColumnAs(
string|array|Zend_Db_Expr $ident, string $alias, boolean $auto
=
false
)
:
string
Quote a column identifier and alias.
quoteIdentifier(
string|array|Zend_Db_Expr $ident, boolean $auto
=
false
)
:
string
Quotes an identifier.
Accepts a string representing a qualified indentifier. For Example:
$adapter->quoteIdentifier('myschema.mytable')
Returns: "myschema"."mytable"
Or, an array of one or more identifiers that may form a qualified identifier:
$adapter->quoteIdentifier(array('myschema','my.table'))
Returns: "myschema"."my.table"
The actual quote character surrounding the identifiers may vary depending on the adapter.
quoteInto(
string $text, mixed $value, string $type
=
null, integer $count
=
null
)
:
string
Quotes a value and places into a piece of text at a placeholder.
The placeholder is a question-mark; all placeholders will be replaced with the quoted value. For example:
$text = "WHERE date < ?";
$date = "2005-01-02";
$safe = $sql->quoteInto($text, $date);
// $safe = "WHERE date < '2005-01-02'"
quoteTableAs(
string|array|Zend_Db_Expr $ident, string $alias
=
null, boolean $auto
=
false
)
:
string
Quote a table identifier and alias.
rollBack(
)
:
Zend_Db_Adapter_Abstract
Roll back a transaction and return to autocommit mode.
select(
)
:
Zend_Db_Select
Creates and returns a new Zend_Db_Select object for this adapter.
setFetchMode(
integer $mode
)
:
void
Set the fetch mode.
setProfiler(
Zend_Db_Profiler|Zend_Config|array|boolean $profiler
)
:
Zend_Db_Adapter_Abstract
Set the adapter's profiler object.
The argument may be a boolean, an associative array, an instance of Zend_Db_Profiler, or an instance of Zend_Config.
A boolean argument sets the profiler to enabled if true, or disabled if false. The profiler class is the adapter's default profiler class, Zend_Db_Profiler.
An instance of Zend_Db_Profiler sets the adapter's instance to that object. The profiler is enabled and disabled separately.
An associative array argument may contain any of the keys 'enabled', 'class', and 'instance'. The 'enabled' and 'instance' keys correspond to the boolean and object types documented above. The 'class' key is used to name a class to use for a custom profiler. The class must be Zend_Db_Profiler or a subclass. The class is instantiated with no constructor arguments. The 'class' option is ignored when the 'instance' option is supplied.
An object of type Zend_Config may contain the properties 'enabled', 'class', and 'instance', just as if an associative array had been passed instead.
setStatementClass(
$class
)
:
Zend_Db_Adapter_Abstract
Set the default statement class.
supportsParameters(
string $type
)
:
bool
Check if the adapter supports real SQL parameters.
update(
mixed $table, array $bind, mixed $where
)
:
int
Updates table rows with specified data based on a WHERE clause.