假设表tbl的列col1具有唯一性,即unique。
为了避免插入重复col1值而报错误,可以使用ignore属性:
insert ignore into ... values(...);
也可以使用replace into语句,即可以插入记录,但是col1会被替换,并且自增id也会改变。
另外也可以这样,当unique或主键重复时,会执行update操作:
insert into ... values(...) ON duplicate KEY UPDATE id = id;
剩下有一个疑问,假如我想知道刚要插入的数据在表中已有记录时,如何快速获取该记录的主键id?
莫非要insert之后再执行select的操作,有木有更快捷的方法呢?