Получить идентификатор последней добавленной записи (last_insert_id)
Назначение
Метод last_insert_id
возвращает идентификатор последней добавленной записи в табличный объект БД.
Пакет
Package Linter::db
Прототип
$rv = $dbh- >last_insert_id($catalog, $schema, $table, $field [, \%attr]);
Параметр | Описание | |
---|---|---|
$catalog
| Параметр игнорируется | |
$schema
| Имя схемы таблицы | |
$table
| Имя таблицы | |
$field
| Параметр игнорируется | |
%attr
| Параметр игнорируется |
Особенности выполнения метода:
-
значение может быть доступно после выполнения команд DML (INSERT, UPDATE, DELETE);
-
если не задано имя таблицы, то будет возвращено значение последней добавленной записи по каналу, в котором выполняется данный метод.
Примечание
Для дополнительной информации см. документацию «СУБД ЛИНТЕР. Справочник по SQL», раздел «Спецификация значений», параметр LAST_ROWID.
Возвращаемые значения
Переменная | Описание | |
---|---|---|
$rv
| Значение последней добавленной записи | |
undef
| Нет данных |
Пример
my $drh = DBI- >install_driver('Linter'); my $dbh = $drh- >connect("", "SYSTEM", "MANAGER8") or die "Could not connect to database: " . DBI- >errstr; $dbh- >do("create table TEST_TABLE(int_column int);"); for (my $i = 0; $i < 10; $i++) { $dbh- >do("insert into TEST_TABLE values ($i);"); } my $id = $dbh- >last_insert_id('', '', 'TEST_TABLE', ''); print("last insert id = $id\n"); $dbh- >do("drop table TEST_TABLE;"); $dbh- >disconnect();