DB_common::limitQuery()
Описание
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. Note that 0 returns the first row, 1 returns the second row, etc.
- 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
Таблица 35-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.
Also note that $from and $count are not being escaped. You should take care of sanitizing input yourself, or you are open to an SQL injection attack.
Пример
Пример 35-1. Using limitQuery()
|
Пред. | Начало | След. |
DB_common::getRow() | Уровень выше | DB_common::nextId() |