唯一 VS 插入忽略
Unique VS INSERT IGNORE
如您所知,unique
列只接受非重复值。现在,我看到了一个关键词IGNORE
(在INSERT
语句之后使用).
嗯,我在文档中读到了 INSERT IGNORE
,我发现它的工作正是 unique
所做的!那么,什么时候应该使用 IGNORE
而不是 unique
列?什么时候有用?
这两个构造是互补的。 unique
约束确保列不能获得重复值。 insert
语句中的 ignore
关键字允许 insert
语句在向 table.[=15= 插入新行时忽略任何错误(例如违反唯一约束) ]
如果没有约束,您的插入语句只会在 table 中创建重复值。如果没有 ignore
关键字,尝试插入此类值会出错,而不是静静地什么都不做。
如您所知,unique
列只接受非重复值。现在,我看到了一个关键词IGNORE
(在INSERT
语句之后使用).
嗯,我在文档中读到了 INSERT IGNORE
,我发现它的工作正是 unique
所做的!那么,什么时候应该使用 IGNORE
而不是 unique
列?什么时候有用?
这两个构造是互补的。 unique
约束确保列不能获得重复值。 insert
语句中的 ignore
关键字允许 insert
语句在向 table.[=15= 插入新行时忽略任何错误(例如违反唯一约束) ]
如果没有约束,您的插入语句只会在 table 中创建重复值。如果没有 ignore
关键字,尝试插入此类值会出错,而不是静静地什么都不做。