последний идентификатор вставки с абстрактной таблицей zend db

переменная $tablemodel в экземпляре модели, которая расширяет Zend_Db_Table_Abstract, если я это сделаю

$tablemodel->insert($data)

для вставки данных. Есть ли какой-либо метод или свойство для получения последнего идентификатора вставки?

С уважением


person Santosh Linkha    schedule 30.01.2011    source источник


Ответы (4)


пытаться

$id = $tablemodel->insert($data);  
echo $id;
person Haim Evgi    schedule 30.01.2011
comment
В моей версии Zend insert возвращает целое число, но это количество затронутых строк, а не последняя вставленная строка! - person algorhythm; 20.06.2014
comment
Zend 2 не возвращает идентификатор, он возвращает затронутое количество строк. - person JordyvD; 31.05.2016

вы можете использовать метод lastInsertId

echo 'last inserted id: ' . $db->lastInsertId();
person dckur    schedule 30.07.2011
comment
Откуда $db? - person JordyvD; 31.05.2016

использовать после запроса на вставку

$this->dbAdapter->getDriver()->getLastGeneratedValue();
person RaviPatidar    schedule 27.10.2016
comment
Теперь ЭТО работает для разнообразия. Я использую автоматически увеличивающийся первичный ключ 'id'. Так что, если у вас есть адаптер, получите драйвер, и он должен работать. Также Zend-Db v2.9 - person Bitterblue; 01.10.2018

$insert_id = $this->db->getLastId() работал на меня

person glitchyme    schedule 14.05.2013