node.js - sequelize postgress bulk insert 如果存在则忽略
问题描述
我有以下代码
await tbl.bulkCreate(response.data, {
ignoreDuplicates: true
});
在 response.data 中有对象数组。
我期望它应该检查所有发现重复的字段不要插入,如果 Id 存在,我认为它的工作方式忽略
我认为这个 ignoreDuplicates 不起作用,因为 id 字段对于新记录来说总是新的
无论如何我可以说检查某些字段是否存在不插入否则插入
谢谢
解决方案
忽略主键的重复值?(MSSQL 或 Postgres < 9.5 不支持)检查您的 postgres 版本,或者您可以使用
{updateOnDuplicate : true}
尝试使用复合键
queryInterface.addConstraint('Items', ['col1', 'col2'], {
type: 'unique',
name: 'custom_unique_constraint_name'
});
推荐阅读
- python - 从 JSON 中获取嵌套的值 - python
- lisp - 使用 entmod 修改线实体
- r - geom_freqpoly 从零以下开始
- ios - RxSwift 不会将数据从一个 ViewController 推回另一个
- azure - 在 Azure 存储上启用静态网站未显示在选项列表中
- android - buildSrc 中自定义 gradle 插件中的类不会打包到 apk 中
- java - 是这个错误org/apache/commons/logging/LogFactory java.lang.NoClassDefFoundError的Logger类方法的模拟解决方案吗?
- java - Google Cloud SQL api export csv:自定义分隔符,处理“N”值并设置 utf8mb64
- list - raku 从头到尾做转子的更好方法是什么?
- magento - Magento 2 + WHM + SSL + Varnish 配置问题