我已经编写了一个查询来向表中添加isbn ...它工作正常但是如果我尝试插入已经存在的isbn它会给我一个错误。如何检查值是否存在?
这是我的问题:
$query = "INSERT INTO cart (isbn, hardcover_purchased, softcover_purchased, ebook_purchased)
VALUES ('0061348112', 1, 0, 0)";
答案 0 :(得分:1)
您可以执行以下更新:
UPDATE Tokens
SET refresh_token = 'C08Rbs'
WHERE id = '2'
AND NOT EXISTS (SELECT refresh_token FROM Tokens WHERE refresh_token ='C08Rbs')
使用ROW_COUNT()来确定是否实际更新了任何行。假设id = 2的行实际存在,如果没有更新行,它将返回0(因为该值已经存在)。
答案 1 :(得分:1)
我建议使用ON DUPLICATE KEY UPDATE
。例如:
$query = 'INSERT INTO cart (isbn, hardcover_purchased, softcover_purchased, ebook_purchased) VALUES ('0061348112', 1, 0, 0) ON DUPLICATE KEY UPDATE isbn=isbn;';