2012-01-20 8 views
3

最後に挿入されたユーザーIDを取得するにはどうすればよいですか?そのユーザーIDを次のクエリに挿入するためにそのユーザーIDを使用する必要があります。このIDはこのトランザクションでのみ実行する必要があります。 私のクエリ:最後に挿入されたuser_idをzend dbで取得する

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

答えて

4

あなたは、最後のインサートIDをretriveするために、このメソッドを使用することができます。

$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

使用データを挿入する()メソッドを挿入します。また、IDを返します。

$db = new Zend_Db_Table('user'); 
$lastInsertId = $db->insert(array('user_id' => '', 'title' => $title)); 
0

これは動作するはずです、これを試してみてください:

$groupID = Engine_Db_Table::getDefaultAdapter()->lastInsertId(); 
関連する問題