独特的VS INSERT IGNORE

时间:2015-11-19 07:30:54

标签: mysql sql unique sql-insert

如您所知,unique列仅接受非重复值。现在,我看到了一个名为IGNORE 的关键字(它在INSERT语句之后使用)

好吧,我在文档中读到了INSERT IGNORE,我发现它的工作正是unique所做的!那么,我应该何时使用IGNORE代替unique列?什么时候有用?

1 个答案:

答案 0 :(得分:1)

这两种结构是互补的。 unique约束可确保列无法获得重复值。 ignore语句中的insert关键字允许insert语句在向表中插入新行时忽略任何错误(例如唯一约束违规)。

没有约束,您的insert语句只会在表中创建重复值。如果没有ignore关键字,尝试插入此类值会导致错误,而不是默默地执行任何操作。