如您所知,unique
列只接受非重复值。现在,我看到了一个名为IGNORE
的关键字(它在INSERT
语句之后使用)。
好吧,我在文档中读到了INSERT IGNORE
,我发现它的工作正是unique
所做的!那么,什么时候应该使用IGNORE
而不是unique
列呢?什么时候有用?
这两个构造是互补的。unique
约束可确保列不能获得重复值。insert
语句中的ignore
关键字允许insert
语句在向表中插入新行时忽略任何错误(例如唯一约束冲突)。
如果没有约束,insert语句只会在表中创建重复的值。如果没有ignore
关键字,尝试插入这样的值会出错,而不是什么都不做。