PostgreSQL在冲突目标上插入多个

问题描述

我有一个表,其中使用AWS RDS Data API,更具体地说是BatchExecuteStatement插入值。

此批处理插入最终会作为一系列插入语句发送到Posgresql 10.7 DB。除非我想调用非批处理API,否则我对迭代没有太多控制,这是一个坏主意。

因此,在此API的限制范围内,我想:

  1. 更新(如果该行已经存在,请进行更新,以避免违反主键约束)
  2. 跳过插入违反外键约束的字段,因为我真的不需要它们。

我尝试了这个,但是没有用:

insert into my_table(item_id,label_id) values(:item_id,:label_id)
on conflict(item_id,label_id)
do update set
item_id = :item_id,label_id = :label_id
on conflict fk_label_id do nothing

=>

ERROR: Syntax error at or near "on"

我也尝试过:

on conflict(item_id,label_id,on constraint fk_label_id)

结果相同。

我不确定现在该怎么办?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)