gpt4 book ai didi

MySQL INSERT IGNORE 或 ON DUPLICATE KEY DO_NOTHING

转载 作者:可可西里 更新时间:2023-11-01 07:04:39 25 4
gpt4 key购买 nike

已经搜索过此类主题并找到了 2 个不同的解决方案,但没有一个有效。

我的表有结构 | ID (auto_increment primary_key) | UID(整数) | FAV_ID (整数) |

如果 UID 和 FAV_ID(两者)已经存在,我需要向这个 FAV_TABLE 插入新记录。

我的查询示例:

INSERT INTO FAV_TABLE (uid, fav_id) VALUES ($u_id,$s_id) ON DUPLICATE KEY UPDATE  uid = uid 

或者这个

INSERT IGNORE FAV_TABLE (uid, fav_id) VALUES ($u_id,$s_id);

正如 mysql 手册所述,仅当 PRIMARY_KEY 相同时,此查询才不会添加记录。如果 uid+fav_id 对是唯一的,我需要查询不添加记录。任何解决方案?谢谢

最佳答案

您需要在这些列上添加UNIQUE KEY:

ALTER TABLE FAV_TABLE ADD UNIQUE KEY(uid, fav_id);

关于MySQL INSERT IGNORE 或 ON DUPLICATE KEY DO_NOTHING,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10365613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com