Для базы данных SQLite3 с таблицей b
, следующим образом:
BEGIN TRANSACTION;
CREATE TABLE b(a integer primary key autoincrement, b varchar(1));
COMMIT;
Этот код дает мне lastInsertId
:
public function lastInsertId() {
$result = $this->_connection->query('SELECT last_insert_rowid() as last_insert_rowid')->fetch();
return $result['last_insert_rowid'];
}
То есть - если ваша таблица определена правильно, ваша единственная проблема, вероятно, заключается в том, что вы пытались получить ключ $ result [0] - также, всякий раз, когда вы используете вычисляемый столбец, я рекомендую использовать псевдоним для столбца, используя Ключевое слово "AS", как я продемонстрировал выше. Если вы не хотите использовать псевдоним столбца, в SQLite3 столбец должен называться «last_insert_rowid ()».