DB_common::nextId()
Описание
Returns the next available number from a sequence. The sequence is automatically incremented each time this method is called.
See "Intro - Sequences" for a more complete discusion.
Параметр
- string $seq_name
name of the sequence
To avoid problems with various database systems, sequence names should start with a letter and only contain letters, numbers and the underscore character.
- boolean $onDemand
When TRUE, the sequence is automatically created if it does not exist yet.
The on demand creation process necessitates the database user specified in the script having the database permissions needed to create a table or sequence. The exact privileges involved depends on the DBMS being used.
Throws
Таблица 35-1. Возможные значения PEAR_Error
Error code | Error message | Reason | Solution |
---|---|---|---|
DB_ERROR_NOT_CAPABLE | DB backend not capable | Function is not supported by the database backend | Switch to another database system, if you really need this feature. |
DB_ERROR_NOT_LOCKED | not locked | Locking of sequence table fails | Database specific, check documentation of your database, |
DB_ERROR_NOSUCHTABLE | no such table | Sequence table was not found | Try to create a new sequence or if you are sure, a sequence was already create, check database integrity |
Заметка
Эта функция не должна вызываться статически.
Внимание |
When using PEAR DB's sequence methods, we strongly advise using these methods for all procedures, including the creation of the sequences. Do not use PEAR DB's methods to access sequences that were created directly in the DBMS. See the warning on the "Intro - Sequences" page complete information. |
Пример
Пример 35-1. Using nextId()
|
Пред. | Начало | След. |
DB_common::limitQuery() | Уровень выше | DB_common::nextQueryIsManip() |