在批量写入PostgreSQL表时,唯一约束常常让重复插入直接报错中断任务。ON CONFLICT DO NOTHING作为upsert语法的分支,能在冲突发生时静默跳过该行而不抛异常。它依托唯一索引或主键判定冲突,执行计划仅做存在性校验,比先查后插减少一次往返。需要注意的是,该子句不会告知跳过了...
在业务开发中经常遇到需要批量写入数据且不能重复插入的场景,upsert 是常见方案。PostgreSQL 提供的 ON CONFLICT DO NOTHING 可以在唯一约束冲突时跳过插入,从而保障操作的幂等性。本文介绍如何通过合理设计表结构和冲突目标,写出安全的 upsert 语句。无论是定时任务重跑还...
在开发企业级应用的过程中,数据库批量写入和更新的性能优化是很多开发者关注的重点。Micronaut Data JDBC作为轻量级的数据库访问框架,提供了简洁的API来处理数据操作,但默认的Upsert逻辑在批量场景下可能存在性能瓶颈。本文将结合Micronaut Data JDBC的特性,分析批量Upsert...