ON DUPLICATE KEY UPDATE的正确语法是什么?

问题描述 投票:0回答:1

我正在尝试在PHP中使用ON DUPLICATE KEY UPDATE。我真的不确定正确的语法是什么。我正在使用MySQL 8.0.19

我有,

$sql = "INSERT INTO cart (title, price, productID, quantity) VALUES ('$title', '$price', '$productID', '$quantity') ON DUPLICATE KEY UPDATE quantity WHERE productID='$productID'";

并且数量是自动递增的,而productID是唯一键。如果productID已经存在,我希望数量增加。

我收到错误,

“”您的SQL语法有误;请在与MySQL服务器版本相对应的手册中找到在第1行的'WHERE productID ='1'附近使用的正确语法。

php mysql sql-insert auto-increment on-duplicate-key
1个回答
0
投票
$stmt = $conn->prepare(" INSERT INTO cart (title, price, productID, quantity) VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE quantity = quantity + ?; "); $stmt->bind_param($title, $price, $productID, $quantity, $quantity); $stmt->execute();
© www.soinside.com 2019 - 2024. All rights reserved.