好,我知道這個查詢(工精細,插入一個全...)Zend數據庫插入行的最後一個ID。 (使用的是Postgres)
$db = Zend_Db_Table::getDefaultAdapter();
$data = array(
"comment_id" => new Zend_Db_Expr("nextval('comments_comment_id_seq')"),
"comment" => $comment,
"comment_level" => 1,
"is_active" => true,
"status" => 0,
"id" => $id,
"user_id" => $_SESSION['role']['user_id'],
"ts_create" => $created,
"ts_mod" => $created
);
$db->insert($this->_name, $data);
$newID = $db->lastInsertId();
我甚至試過甚至
$newID = $db->insert($this->_name, $data);
我不能得到的ID的價值。它不是mysql(i),所以我認爲這是我的第一個問題,因爲postgres似乎沒有像我一樣習慣於使用它的自動腳本。所以我希望有人能幫助我。無論如何,以獲得「comment_id」列id,在一個新的插入項目?因爲現在我嘗試了lastInsertID,我得到的所有結果都是false或1,無論哪種情況都是錯誤的。
的PostgreSQL提供'INSERT ... RETURNING',所以Zend公司真的應該使用以獲得生成的ID。也許你應該提交功能請求? –
我可能只是這樣做,因爲它會很方便 – chris