当前位置: 首页 > 知识库问答 >
问题:

如何在博士后的两个专栏中的一个专栏中突出冲突?

闻人思聪
2023-03-14

当冲突发生在表中的两个列之一时,可以在Postgres 9.5中执行upsert吗?基本上我有两个列,如果其中一个列抛出唯一的约束冲突,那么我想执行更新操作。

共有2个答案

贺宏富
2023-03-14

我认为在Postgres 9.5中,冲突只能有一个约束或多个列名,但在这一点上,多个列必须有一个索引

何昆
2023-03-14

是的,并且此行为是默认的。任何唯一的约束违反都构成冲突,如果指定了ON CONFLICT DO UPDATE,则执行UPDATEINSERT语句只能有一个ON CONFLICT子句,但是该子句的conflict_target可以指定多个列名,每个列名都必须有一个索引,例如UniQUE约束。但是,您仅限于一个conflict_action,并且在处理该操作时,您不知道是哪个约束导致了冲突。如果您需要这种信息,或者根据约束冲突的具体操作,您应该编写一个触发器函数,但是这样您就失去了INSERT... ON CONFLICT DO...语句的至关重要的原子性。

 类似资料:
  • 我有一个表,其中有两列是唯一的,如果第一列(或两列)有冲突,我想向上插入,但是如果只有第二列有冲突,我什么也不做。这可能吗? 以下功能可以检查电子邮件中的冲突: 但我想这样做(下面的语法无效):

  • 创建专栏 功能介绍:学员购买后能随时阅读专栏内容。 适用场景:适合系列文章、出版书籍、小说等。 步骤 从【付费阅读】→【专栏】→【新建专栏】,进入专栏编辑页面。 填写专栏名称,所属分类,完善显示顺序、专栏价格、专栏简介以及上传图文封面, 点击【立即创建】即可成功创建专栏。

  • 嘿,伙计们,我正在制作这个游戏,我想知道如何在右边制作另一个专栏。你会从视觉上更好地理解: 这就是我现在做的: 但是如果我再加一个按钮,它就会垂直向下。我如何使它水平到中间,这样我就可以使我的井字游戏。 代码:

  • 专栏介绍 本专栏的主要目的是为了解决在使用 AkShare 中遇到的各种问题,主题包括但不限于:环境配置、AkShare 安装和升级、数据接口请求、代理配置等等。 常见问题 安装 AkShare 的速度慢,下载时间久 请使用国内的源来安装 AkShare 基于 Python 的代码如下: pip install akshare -i http://mirrors.aliyun.com/pypi/s

  • 本仓库以 Spring 源码学习为目的,通过手写简化版 Spring 框架,了解 Spring 核心原理。 在手写的过程中会简化 Spring 源码,摘取整体框架中的核心逻辑,简化代码实现过程,保留核心功能,例如:IOC、AOP、Bean生命周期、上下文、作用域、资源处理等内容实现。 在资料整理的过程中,发现了两个非常优秀的手写 Spring 框架源码,tiny-spring、mini-sprin

  • 根据一段代码,我在PyCharm中有这个输出 我编写代码,然后将csv文件中的列birthdate转换为datetime对象: 然后我编写一个函数来创建并返回出生日期的年龄 从代码中,我在PyCharm控制台中有这个输出 预期的输出是一个带有年龄的列,应该添加到数据帧中