方法一插入完,执行方法二,此时方法二包主键冲突。方法二和方法一处在不同事务中
如果是用主键primary或者唯一索引unique区分了记录的唯一性(如果没有唯一索引,ignore无从忽略,主键自增并不会有完全重复的两条数据),避免重复插入记录可以使用:
代码如下:
INSERT IGNORE INTO table_name
(email
, phone
, user_id
) VALUES ('test9@163.com', '99999', '9999');
这样当有重复记录就会忽略,执行后返回数字0
还有个应用就是复制表,避免重复记录:
代码如下:
INSERT IGNORE INTO table_1
(name
) SELECT name
FROM table_2
;