gpt4 book ai didi

mysql - 我可以在MySQL触发器中使用 "INSERT INTO WHERE NOT EXISTS"来避免插入重复记录吗?

转载 作者:行者123 更新时间:2023-11-29 06:56:54 25 4
gpt4 key购买 nike

我可以在 MySQL 触发器中使用“INSERT INTO WHERE NOT EXISTS”来避免插入重复记录,例如 --

INSERT INTO `user` (`id`, `name`) VALUES (1, 'John') WHERE NOT EXISTS (SELECT * FROM `user` WHERE `id` = 1);

当我在MySQL触发器中使用这句话时,出现错误提示,无法创建触发器。

错误代码:1064您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 6 行的“WHERE NOT EXISTS (SELECT * FROM user WHERE id = 1)”附近使用的正确语法

最佳答案

您可以使用忽略:

INSERT IGNORE `user` (`id`, `name`) VALUES (1, 'John')

如果该行已经存在,它不会插入也不会抛出错误。

您必须知道它是基于(表的)键来确定它是否重复。

关于mysql - 我可以在MySQL触发器中使用 "INSERT INTO WHERE NOT EXISTS"来避免插入重复记录吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45194882/

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