首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批量插入到Postgresql或MySQL时忽略重复约束

批量插入到Postgresql或MySQL时忽略重复约束
EN

Stack Overflow用户
提问于 2016-11-28 20:22:09
回答 1查看 195关注 0票数 0

在发布批量insert statement时,我们如何忽略(抑制) DB和/或JDBC驱动程序抛出的异常?

假设我想批量插入一些用户,并且我有一个Id作为唯一键

代码语言:javascript
复制
INSERT INTO users
(id,name,age,email,pass_code) 
VALUES 
(1,'Mark',18,'mail@mail.com',123),
(2,'Zak',18,'mail@mail.com',123),
(3,'Djigi',18,'mail@mail.com',123),

(1,'James Petkov',18,'mail@mail.com',123), --Duplicated by id ? 

(4,'Kinkinikin',18,'mail@mail.com',123),
(5,'A bula bula ',18,'mail@mail.com',123),
(6,'Shakazulo',18,'mail@mail.com',123);

如何告诉引擎MySQL/PostgreSQL继续插入剩余的记录?

在SQL中是否支持这一点?

EN

回答 1

Stack Overflow用户

发布于 2016-11-28 20:28:41

在PostgreSQL中,可以使用以下命令忽略失败的行

代码语言:javascript
复制
INSERT ... ON CONFLICT (id) DO NOTHING;

一种更通用的解决方案是单独运行每个INSERT并忽略错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40844230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档