我试图使用insert ignore语句将名称放入数据库。我不想创建重复项,但是,我使用的insert ignore语句一直在插入!
声明如下:

INSERT IGNORE INTO firstname(name) VALUES ('Tommy')

我的数据库显示:
id  |  name
-------------
1      Tommy
2      Tommy
3      Tommy

一些帮助我的人的信息。我的id是我的主键,它是自动递增的。
我的猜测是,因为新的id是自动创建的,它认为这是一个新的结果!我不知道如何用一个更大的SQL查询来解决这个问题,如果汤米的名字先存在,
谢谢

最佳答案

这是因为name表中的firstname列是not unique。尝试使用此DDL语句添加unique约束,

ALTER TABLE firstname ADD UNIQUE (name);

如果仍然添加重复的名称,请尝试。希望现在起作用:)

关于mysql - MYSQL在一行上忽略插入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11913397/

10-13 00:52