Учебник РНР
НазадВперёд

mysql_insert_id

(PHP 3, PHP 4)

mysql_insert_id - получает id, сгенерированный предыдущей операцией INSERT.

Описание

int mysql_insert_id ([resource link_identifier])

mysql_insert_id() возвращает ID, сгенерированный для столбца AUTO_INCREMENT предыдущим запросом INSERT, с использованием данного link_identifier. Если link_identifier не специфицирован, принимается последняя открытая ссылка.

mysql_insert_id() возвращает 0, если предыдущий запрос не генерирует значение AUTO_INCREMENT. Если вам нужно сохранить значение на будущее, вызовите mysql_insert_id() сразу после запроса, генерирующего это значение.

Примечание: значение MySQL-функции LAST_INSERT_ID() всегда содержит самое последнее сгенерированное значение AUTO_INCREMENT и не восстанавливается между запросами.

Предупреждение!

mysql_insert_id() конвертирует return-тип внутренней MySQL C API-функции mysql_insert_id() в тип long (называемый в РНР int). Если ваш столбец AUTO_INCREMENT имеет тип столбца BIGINT, значение, возвращаемое функцией mysql_insert_id(), будет некорректным. Тогда используйте внутреннюю MySQL SQL-функцию LAST_INSERT_ID() в SQL-запросе.

Пример 1. mysql_insert_id

<?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("could not connect");
    mysql_select_db("mydb");

    mysql_query("INSERT INTO mytable (product) values ('kossu')");
    printf ("Last inserted record has id %d\n", mysql_insert_id());
?>

См. также mysql_query().


НазадОглавлениеВперёд
mysql_infoВверхmysql_list_dbs