我试图使用insert ignore语句将名称放在数据库中.我不想创建重复项,但是,我使用的insert ignore语句一直在插入!
声明是:
INSERT IGNORE INTO firstname(name) VALUES ('Tommy')
Run Code Online (Sandbox Code Playgroud)
我的数据库显示:
id | name
-------------
1 Tommy
2 Tommy
3 Tommy
Run Code Online (Sandbox Code Playgroud)
一些帮助我的人的信息.我的id是我的主键,它是自动递增的.
我的猜测是因为新的id是自动创建的,所以它认为它是一个新的结果!我不知道如何用更大的SQL查询来检查这个expcept,检查Tommy名称是否存在
谢谢
这是因为该列name的firstname表not unique.尝试unique使用此DDL语句添加约束,
ALTER TABLE firstname ADD UNIQUE (name);
Run Code Online (Sandbox Code Playgroud)
然后尝试它是否仍然添加重复的名称.希望它现在有用:)