postgresql insert on conflict 不存在则插入,存在则更新

向一张表执行插入动作,如果插入的字段数据已存在,则执行更新操作,不存在则进行插入操作。

1、创建一张表

CREATE TABLE "user_info" (

"id" int2 NOT NULL,

"name" varchar(20) COLLATE "pg_catalog"."default",

CONSTRAINT "user_info_pkey" PRIMARY KEY ("id")

);

2、执行编辑语句

INSERT INTO "user_info" ("id","name") VALUES (1,'张三') ON CONFLICT ("id") DO UPDATE SET "name" = '张三';

3、执行编辑语句("id"值相同

INSERT INTO "user_info" ("id","name") VALUES (1,'李四') ON CONFLICT ("id") DO UPDATE SET "name" = '李四';

相关推荐
ALex_zry7 分钟前
C++ ORM与数据库访问层设计:Repository模式实战
开发语言·数据库·c++
Arva .6 小时前
深分页与游标
数据库·oracle
idolao6 小时前
MySQL 5.7 安装教程:详细步骤+自定义安装+命令行客户端配置(Windows版)
数据库·windows·mysql
20年编程老鸟java+ai全栈7 小时前
mysql、pg、oracel数据库迁移避坑指南
数据库·mysql
Rsun045518 小时前
Redis中实现访问量计数
数据库·redis·缓存
天空属于哈夫克38 小时前
自动化素材中枢:实现云端文件与外部群消息的异步同步方案
数据库·oracle
Navicat中国8 小时前
Navicat Premium Lite 正式登录鸿蒙应用市场
数据库·华为·harmonyos·navicat
Yvonne爱编码8 小时前
数据库---Day 1 数据库基础
数据库·mysql·oracle
Ricky_Theseus8 小时前
数据库关系代数 - 连接操作
linux·数据库·算法
2301_793804698 小时前
定时任务专家:Python Schedule库使用指南
jvm·数据库·python