1

テーブルに行を挿入していて、自動的にインクリメントされるプライマリ インデックスの値を取得したいと考えています。

プライマリ インデックスはテーブル内の唯一の一意の値であるため、あいまいさを防ぐために「SELECT [プライマリ インデックス] FROM [テーブル] WHERE [列 = 挿入したデータ]」のようなことはしたくありません。また、INSERT ステートメントと SELECT ステートメントの間に行が挿入された可能性があるため、最後の行を SELECT したくありません。

空の行を INSERT し、プライマリ インデックスを SELECT し、データを含む行を UPDATE することはできますが、それは非常に見苦しいハックのように思えます。これは、mysqli API を介して挿入したばかりの行のプライマリ インデックスを取得する方法である必要があると私は信じています。

誰かが私を啓発できますか?

4

1 に答える 1

5

mysql_insert_id()が答えです。

質問にも「mysqli」のタグを付けました。その場合、mysqli->insert_id()を使用します。

于 2009-07-23T22:34:36.583 に答える