我正在尝试使用insert ignore语句在数据库中放置一个名称。我不想创建重复项,但是,我使用的insert ignore语句会不断插入!
该语句是:
INSERT IGNORE INTO firstname(name) VALUES ('Tommy')
我的数据库显示如下:
id | name ------------- 1 Tommy 2 Tommy 3 Tommy
为帮助我的人们提供的一些信息。我的ID是我的主键,它是自动递增的。
我的猜测是,由于新ID是自动创建的,因此会认为它是新结果!我不确定如何使用更大的SQL查询来解决此问题,请检查名称Tommy首先是否存在
谢谢
这是因为该列name的firstname表not unique。尝试unique使用此DDL语句添加约束,
name
firstname
not unique
unique
ALTER TABLE firstname ADD UNIQUE (name);
然后尝试是否仍然添加重复的名称。希望它现在可以工作:)