我必须一个接一个地运行多个INSERT
语句,但我需要检索其间最后一个插入行的主键,以便在下一个INSERT
语句中使用。我知道我可以使用SELECT LAST_INSERT_ID();
执行此操作,但我不太确定如何在我的代码中使用它来存储在php变量中。
function addItem($name, $category, $rating, $user){
$pdo = Database::connect();
$sql = "INSERT INTO items (id, category, api, name, api_id) VALUES ('', '". $category ."', '', '". $name ."', '')";
$pdo->query($sql);
// $item_id = ???
$sql = "INSERT INTO ratings (id, user, item, rating) VALUES ('', '". $user ."', '". $item_id ."', '". $rating ."')";
$pdo->query($sql);
Database::disconnect();
}
答案 0 :(得分:1)
答案 1 :(得分:1)
function addItem($name, $category, $rating, $user){
$pdo = Database::connect();
$sql = "INSERT INTO items (id, category, api, name, api_id) VALUES ('', '". $category ."', '', '". $name ."', '')";
$pdo->query($sql);
// $item_id = ???
$item_id = $pdo->lastInsertId();
$sql = "INSERT INTO ratings (id, user, item, rating) VALUES ('', '". $user ."', '". $item_id ."', '". $rating ."')";
$pdo->query($sql);
Database::disconnect();
}