我的数据库有一个名为 fruit
的表:
餐 table 水果
+-------------+
| id | name |
+ ----------- +
| 1 | apple |
| 2 | orange |
| 3 | banana |
| 4 | grape |
+-------------+
id
是主键。我想向表中添加条目,但前提是它们不存在。
查询
IF NOT EXISTS (SELECT name FROM fruit WHERE name = 'mango')
INSERT INTO fruit (name)
VALUES ('mango')
错误
我使用一个名为 Sequel Pro 的 SQL GUI 应用程序,该查询出现以下错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'IF NOT EXISTS (SELECT name FROM fruit WHERE name = 'mango') INSERT INTO frui' 附近使用正确的语法
也许
可能发生了一些可疑的事情。查询可能在 INSERT INTO frui
处停止。应用程序有问题?还是我的查询有误?
最佳答案
你必须使用
ALTER TABLE fruit ADD UNIQUE (name)
然后使用
INSERT IGNORE INTO fruit (name) VALUES ('mango')
关于mysql - 如果项目不存在,则仅插入表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20928181/