DB_common::limitQuery() -- Sends a LIMIT query to the database Описание
Executes a SQL query, but fetches only the the specificed
count of rows. It is an emulation of the MySQL LIMIT option.
Параметр
- string
$query
the SQL query
- integer
$from
the row to start to fetch
- integer
$count
the numbers of rows to fetch
- mixed
$params
array, string or numeric data to be added to the prepared statement.
Quantity of items passed must match quantity of placeholders in the
prepared statement: meaning 1 placeholder for non-array
parameters or 1 placeholder per array element.
Возвращаемое значение
mixed - a new DB_result object
for queries that return results (such as
SELECT queries),
DB_OK for queries that manipulate data (such as
INSERT queries)
or a DB_Error object on failure
Throws
Таблица 22-1. Возможные значения PEAR_Error Error code | Error message | Reason | Solution |
---|
DB_ERROR_NODBSELECTED |
no database selected
|
No database was choosen.
|
Check the DSN
in
connect().
| every other error code | |
Database specific error
|
Check the database related section of
PHP-Manual
to detect the reason for this error. In the most cases
a misformed SQL statment. Ie. using LIMIT in a SQL-Statment
for an Oracle database.
|
ЗаметкаЭта функция не должна вызываться статически.
Depending on the database you will not really get
more speed compared to
query(). The advantage of
limitQuery() is the deleting of unneeded
rows in the resultset, as early as possible. So this can
decrease memory usage.
ПримерПример 22-1. Using limitQuery()
<?php
// Once you have a valid DB object named $db...
$res =& $db->limitQuery('SELECT * FROM foo', 50, 10);
if (DB::isError($res)) {
die($res->getMessage());
}
?>
|
|
|