MySQLで挿入された行のIDを取得する方法


  1. AUTO_INCREMENTカラムを使用する方法: 一般的な方法は、挿入された行のIDを保持するためにAUTO_INCREMENTカラムを使用することです。

    例:

    INSERT INTO テーブル名 (カラム1, カラム2) VALUES ('値1', '値2');
    SELECT LAST_INSERT_ID();

    上記のコードでは、まずINSERT文を使用してデータを挿入します。そして、LAST_INSERT_ID()関数を使用して直前に挿入された行のIDを取得します。

  2. LAST_INSERT_ID関数を使用する方法: もう一つの方法は、直前に挿入された行のIDを取得するためにLAST_INSERT_ID()関数を使用することです。

    例:

    INSERT INTO テーブル名 (カラム1, カラム2) VALUES ('値1', '値2');
    SELECT LAST_INSERT_ID();

    上記のコードでは、まずINSERT文を使用してデータを挿入します。そして、LAST_INSERT_ID()関数を使用して直前に挿入された行のIDを取得します。

  3. RETURNING句を使用する方法 (MySQL 8.0以降): MySQL 8.0以降では、RETURNING句を使用して挿入された行のIDを直接取得することもできます。

    例:

    INSERT INTO テーブル名 (カラム1, カラム2) VALUES ('値1', '値2') RETURNING ID;

    上記のコードでは、挿入された行のIDを含むIDカラムを持つテーブルにデータを挿入します。その際、RETURNING句を使用して直接IDを取得します。

これらは、MySQLで挿入された行のIDを取得するためのいくつかの一般的な方法です。お使いのMySQLのバージョンに応じて、最適な方法を選択してください。