mysql_insert_id
直近のクエリで生成された ID を得る
&mysql.alternative.note;
mysqli_insert_id
PDO::lastInsertId
&reftitle.description;
intmysql_insert_id
resourcelink_identifierNULL
直近のクエリ (通常は INSERT) により AUTO_INCREMENT カラム用に生成された ID
を取得します。
&reftitle.parameters;
&mysql.linkid.description;
&reftitle.returnvalues;
直近のクエリにより AUTO_INCREMENT カラム用に生成された
ID を返します。直近のクエリが AUTO_INCREMENT な値を生成しなかった
場合に 0、MySQL 接続が確立されていなかった
場合に &false; を返します。
&reftitle.examples;
mysql_insert_id の例
]]>
&reftitle.notes;
mysql_insert_id は、MySQL C API 関数
mysql_insert_id() の戻り値の型を
long 型(PHP では int と呼ばれる)
に変換します。
AUTO_INCREMENT カラムが BIGINT 型 (64 ビット) である場合、
変換結果は不正確になります。
かわりに、MySQL の SQL 関数
LAST_INSERT_ID() を SQL 内で使いましょう。
PHP の integer 型の最大値に関する詳細な説明は、
integer
のドキュメントをごらんください。
mysql_insert_id は直近のクエリに対して働くので、
値を生成したクエリの直後に mysql_insert_id
をコールすることを忘れないようにしてください。
MySQL の SQL 関数 LAST_INSERT_ID() の値には、
常に直近の AUTO_INCREMENT の値が含まれており、クエリの間では
リセットされません。
&reftitle.seealso;
mysql_query
mysql_info