【发布时间】:2012-06-22 13:04:35
【问题描述】:
我有以下代码用于使用 PDO 将数据插入数据库。
将数据插入数据库,但不返回最后插入的 ID。
这里userid是主键
try {
$dbh = new PDO('mysql:host=localhost;dbname=crud_demo', "username", "password");
$sqlQuery = "INSERT INTO users(userid,first_name,last_name,email,password)
VALUES(:userid,:first_name,:last_name,:email,:password)";
$statement = $dbh->prepare($sqlQuery);
$bind = array(
":userid" => "bhavik",
":first_name" => "Bhavik",
":last_name" => "Patel",
":email" => "bhavitk@live.in",
":password" => "1234567"
);
$statement->execute($bind);
echo $dbh->lastInsertId();
} catch (PDOException $e) {
echo $e->getMessage();
}
$dbh->lastInsertId(); 无论我为 userid 插入什么值,总是返回 0
【问题讨论】:
-
不,这不是 icnremental @FabioCosta
-
Unable get Last Insert Id 的可能重复项
-
您正在为您的 ID 插入您自己的值,那么为什么需要取回它呢?你已经知道它是什么了,对吧?
-
@nickb 这也是我的问题,但有一些问题,所以我又问了一遍
-
如果您的主键是 varchar,请参阅this。我也有同样的问题。