PHP MySQL 最后插入的 ID
在本教程中,您将学习如何使用 PHP 从 MySQL 数据库表中检索最后插入的行的唯一 ID。
如何获取最后插入行的 ID
在 PHP MySQL 插入 章中,您学习了 MySQL 会在每次向表中插入新记录或新行时自动为 AUTO_INCREMENT
列生成唯一 ID。 但是,在某些情况下,您需要将自动生成的 ID 插入到第二个表中。 在这些情况下,您可以使用 PHP mysqli_insert_id()
函数来检索最近生成的 ID,如下面的示例所示。
对于这个示例,我们将使用我们在 PHP MySQL 创建表 章节中创建的相同 persons 表,该表有四列 id, first_name, last_name 和 email,其中 id 是主键列并标有 AUTO_INCREMENT
标志。
<?php
/* 尝试 MySQL 服务器连接。 假设您正在运行 MySQL
具有默认设置的服务器(用户 'root' 没有密码) */
$link = mysqli_connect("localhost", "root", "", "demo");
// 检查连接
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
// 尝试插入查询执行
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Ron', 'Weasley', 'ronweasley@mail.com')";
if(mysqli_query($link, $sql)){
// 获取最后插入的id
$last_id = mysqli_insert_id($link);
echo "Records inserted successfully. Last inserted ID is: " . $last_id;
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// 关闭连接
mysqli_close($link);
?>
Advertisements