Получить последний вставленный user_id в Zend DB - PullRequest
3 голосов
/ 20 января 2012

Как получить последний вставленный идентификатор пользователя? Я должен использовать этот идентификатор пользователя для вставки этого идентификатора пользователя в следующий запрос, что также должно быть сделано только в этой транзакции. мой запрос:

$db->beginTransaction ();
$sql = $db->query ( "INSERT INTO user( user_id, title)
 VALUES ( :p_user_id, :p_title )",
 array ( 'p_user_id' => '', 'p_title' => $title ) );

Ответы [ 3 ]

4 голосов
/ 20 января 2012

Вы можете использовать этот метод для получения последнего идентификатора вставки:

$db->lastInsertId() 

С вашим кодом:

$db->beginTransaction ();
$sql = $db->query ( "INSERT INTO user( user_id, title) VALUES ( :p_user_id, :p_title )",
array ( 'p_user_id' => '', 'p_title' => $title ) );
$db->lastInsertId() ;
2 голосов
/ 20 января 2012

Используйте метод insert () для вставки данных. Также он возвращает ID.

$db = new Zend_Db_Table('user');
$lastInsertId = $db->insert(array('user_id' => '', 'title' => $title));
0 голосов
/ 07 июля 2015

Попробуйте это должно работать:

$groupID = Engine_Db_Table::getDefaultAdapter()->lastInsertId();
...