abstract public function DatabaseConnection::nextId

Retrieves an unique id from a given sequence.

Use this function if for some reason you can't use a serial field. For example, MySQL has no ways of reading of the current value of a sequence and PostgreSQL can not advance the sequence to be larger than a given value. Or sometimes you just need a unique integer.

Parameters

$existing_id: After a database import, it might be that the sequences table is behind, so by passing in the maximum existing id, it can be assured that we never issue the same id.

Return value

An integer number larger than any number returned by earlier calls and also larger than the $existing_id if one was passed in.

3 methods override DatabaseConnection::nextId()
DatabaseConnection_mysql::nextId in drupal/includes/database/mysql/database.inc
Retrieves an unique id from a given sequence.
DatabaseConnection_pgsql::nextId in drupal/includes/database/pgsql/database.inc
Retrieve the next id in a sequence.
DatabaseConnection_sqlite::nextId in drupal/includes/database/sqlite/database.inc
Retrieves an unique id from a given sequence.

File

drupal/includes/database/database.inc, line 1338
Core systems for the database layer.

Class

DatabaseConnection
Base Database API class.

Code

public abstract function nextId($existing_id = 0);