MariaDB 重复键更新

MariaDB on duplicate key update

如果密钥重复,我想使数量=(当前数量)+(新数量)

https://mariadb.com/kb/en/mariadb/insert-on-duplicate-key-update/

在 Mariadb 文档中,只有分配列值的大小写。

CREATE TABLE Cart(
    buyer varchar(255) NOT NULL PRIMARY KEY,
    productid int(11) NOT NULL PRIMARY KEY,
    qty int(11) NOT NULL
);

$addCart_sql = "INSERT INTO Cart (buyer, productid, qty) 
                VALUES ('$buyer', $productid, $qty)
                ON DUPLICATE KEY UPDATE qty = VALUES(qty + $qty)";

我试过了

ON DUPLICATE KEY UPDATE qty = VALUES(qty) + VALUES($qty);
ON DUPLICATE KEY UPDATE qty = VALUES(qty) + $qty;

但所有情况 return 错误

我该怎么办??

尝试

ON DUPLICATE KEY UPDATE qty = VALUES(qty) + qty