tbl_user表结构如图所示
已有两条数据
user_name字段为唯一索引,此时插入相同user_name的记录,执行sql如下 :
insert into tbl_user (id, user_name, age, weight) values (3, 'tom_new',20,100) on duplicate key update user_name = 'tom_update',age = 22
结果:
id字段为主键,此时插入相同id的记录,执行sql如下 :
insert into tbl_user (id, user_name, age, weight) values (2, 'lingling_new',20,100) on duplicate key update user_name = 'lingling_update',age = 22
结果:
结论:
主键和唯一索引字段重复都可以触发 on duplicate key update 语句执行