MYSQL 插入时判断重复就不插入,不影响原记录

2016-12-20 20:49:54 +08:00
 eabet
用 REPLACE INTO 的话是更新,有没有办法不影响原记录呢?
4102 次点击
所在节点    MySQL
11 条回复
julyclyde
2016-12-20 21:23:47 +08:00
insert ignore?
billlee
2016-12-20 21:49:09 +08:00
那你为什么用 REPLACE 干嘛,用 INSERT
li24361
2016-12-20 21:59:55 +08:00
ON DUPLICATE KEY UPDATE
inaho
2016-12-20 22:01:58 +08:00
楼上+1 , 加个唯一索引
TaMud
2016-12-20 22:17:05 +08:00
1 、唯一索引
2 、 WHERE NOT EXISTS
darrenfang
2016-12-21 07:47:21 +08:00
insert ignore
wwulfric
2016-12-21 10:39:36 +08:00
唯一索引会报错啊
Zuckonit
2016-12-21 11:02:31 +08:00
1. mysql
2. unique index
3. ON DUPLICATE KEY UPDATE / INSERT IGNORE
anthow
2016-12-21 11:48:47 +08:00
merge into ... when not matched then insert...
ihuotui
2016-12-21 12:03:52 +08:00
捕获唯一索引的错误,然后变为更新操作啊。
rekulas
2016-12-21 23:01:56 +08:00
insert into table1(a,b,c) select v1,v2,v3 from dual where not exists (select * from table1 where a='a')
这样也可以无重复插入

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/328980

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX