id
によって制御されている場合、現在のユーザーに挿入されたばかりの を取得するにはどうすればよいAUTO_INCREMENT
ですか?
(別の用途で ID が必要です)
注: 一部の行は削除できるためMAX(id)
、オプションではありません。
元:
挿入された行 2
行 3 を挿入
行 3 を削除
行4を挿入しましたが、 MAX(id)
3を返します..
どうもありがとうございました!
id
によって制御されている場合、現在のユーザーに挿入されたばかりの を取得するにはどうすればよいAUTO_INCREMENT
ですか?
(別の用途で ID が必要です)
注: 一部の行は削除できるためMAX(id)
、オプションではありません。
元:
挿入された行 2
行 3 を挿入
行 3 を削除
行4を挿入しましたが、 MAX(id)
3を返します..
どうもありがとうございました!
PDO の場合:
$db->lastInsertId(); // $db is the PDO object
MySQLi OOP の場合:
$db->insert_id; // $db is the MySQLi object
MySQLi プロシージャルの場合:
mysqli_insert_id($db); // $db is the connection variable
古い MySQL API を使用している場合は、切り替えてください。
試す
@@identity を選択
これは、ID 列の最後の値を返す必要があります
mysql_insert_id() または mysqli_insert_id() を使用する
mysql_insert_idを使用できます
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>
編集:
mysql_insert_idは非推奨です。mysqli_insert_id になりました