mysqli_insert_id: データベース リレーションシップの最後に挿入された ID の取得
データベース駆動型アプリケーションでは、多くの場合、異なるテーブル内のレコード間のリレーションシップを確立する必要があります。 。レコードを 1 つのテーブルに挿入するとき、そのレコードの ID を取得して、他のテーブルの関連データに関連付ける必要がある場合があります。
MySQLi ライブラリには、自動インクリメントされる ID を取得するための mysqli_insert_id() 関数が用意されています。最後に挿入されたレコードの。ただし、データベース テーブルには、この目的のために指定された自動インクリメント フィールドが必要であることに注意することが重要です。
最後に挿入された ID を取得するには、次のコード スニペットを使用できます:
$last_id = mysqli_insert_id($mysqli);
$mysqli を MySQLi 接続オブジェクトに置き換えます。 $last_id 変数には、最後に挿入されたレコードの ID が含まれます。
画像をユーザーの情報に関連付けたいという特定のケースでは、最後に挿入された ID を table2 から取得して使用できます。対応するデータを table1 に挿入します。
その方法は次のとおりです。
$last_id = mysqli_insert_id($mysqli); // Retrieve the last inserted ID from table2 $stmt = $mysqli->prepare(" insert into table1 (username, firstname, lastname, image) select ?,?,?,image from table2 t2 where username = ? and t2.id = ? "); $stmt->bind_param('sssss', $username, $fname, $lname, $username, $last_id); $stmt->execute();
mysqli_insert_id() 関数を使用すると、データ関係が適切に確立されていることを確認でき、関連するレコードに効率的にアクセスして操作できるようになります。
以上がmysqli_insert_id() を使用してデータベース関係を管理する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。