Получение последнего вставленного индекса mysql - PullRequest
3 голосов
/ 23 января 2012

Я использую ADODB для подключения к моей базе данных.После отправки запроса я хочу получить идентификатор последней вставленной строки (из только что вставленного запроса).

ADODB имеет функцию Insert_ID (), которая должна получить это, но это не так ...db->Insert_ID()не работает и не работаетdb->Insert_ID($table, $key)

Они оба просто возвращают пустые значения.Я дважды проверил свою таблицу, и оператор вставки действительно работает, вводится новая строка, а ключ - auto_increment.Я неправильно использую Insert_ID или есть лучший способ получить ключ последней вставленной строки?

Спасибо

Редактировать: Добавление кода

    $result = \PSU::db->Execute( $updateSQL, $values_array );
    $id = \PSU::db->Insert_ID();
    // $id = \PSU::db->Insert_ID( $table, $key );

\ PSU:: db - это наш класс реализации ADODB, который заботится о таких вещах, как подключение, отключение и т. д.

Ответы [ 2 ]

0 голосов
/ 20 августа 2014

Попробуйте:

$result = \PSU::db->Execute( $updateSQL, $values_array );

return \PSU::db->_connectionID->insert_id ;

_connectionID должен быть исправлен как есть.

Надеюсь, это поможет!

0 голосов
/ 03 февраля 2012

Возможно ли, что вы отключаете и повторно подключаетесь к mysql между запросом и insert_id ()?

...