mysqli_stmt::$insert_id
(mysqli_stmt_insert_id)前の挿入操作によって生成されたIDを取得します
mysqli_stmt :: $ insert_id()関数は、最後の挿入操作の自動侵入ID値を取得するために使用されます。最後の挿入操作によって生成された自動インクリメントIDを表す整数を返します。
使用法:
サンプルコードは次のとおりです。
// 创建mysqli连接$conn = new mysqli("localhost", "username", "password", "database"); // 检查连接是否成功if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 准备SQL语句$sql = "INSERT INTO table_name (column1, column2) VALUES (?, ?)"; $stmt = $conn->prepare($sql); // 绑定参数$stmt->bind_param("ss", $value1, $value2); // 设置参数值$value1 = "John"; $value2 = "Doe"; // 执行SQL语句$stmt->execute(); // 获取最后一次插入操作的自增ID值$insertId = $stmt->insert_id; // 输出结果echo "最后一次插入操作的自增ID值为: " . $insertId; // 关闭连接$stmt->close(); $conn->close();
上記の例では、最初にMySQLI接続を作成し、挿入ステートメントを準備します。次に、パラメーターをバインドしてパラメーター値を設定します。 SQLステートメントを実行した後、mysqli_stmt :: $ insert_id()関数を呼び出すことにより、最後の挿入操作の自動インクリメントID値を取得します。最後に、値を画面に出力します。
mysqli_stmt :: $ insert_id()関数を使用する前に、最初に挿入操作を実行する必要があります。そうしないと、0が返されます。さらに、この関数は、現在の接続によって生成された最後の挿入操作の自動挿入ID値のみを取得できます。