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" = '李四';

相关推荐
逆境不可逃2 分钟前
【用AI学Agent】Agent入门进阶:Prompt工程
大数据·数据库·人工智能
PD我是你的真爱粉7 分钟前
MySQL 索引深度解析:从底层结构到实战优化
数据库·mysql
AlickLbc10 分钟前
达梦数据库使用体验记录(1-数据库安装篇)
数据库
WangJunXiang616 分钟前
MySQL高可用详细解析
android·数据库·mysql
蓝之静云22 分钟前
mapper执行sql报空指针,需要传入参数
数据库·python·sql
always_TT25 分钟前
用位运算交换两个数(不使用临时变量)
数据库
一直都在57226 分钟前
Redis(三)
数据库·redis·bootstrap
葳_人生_蕤27 分钟前
hot100——双指针法专题
java·前端·数据库
M1nat0_27 分钟前
Linux基础 Ext 文件系统:从磁盘硬件到目录路径的全链路解析
linux·服务器·网络·数据库
蜡台30 分钟前
macOS 无法启动 MySQL服务解决
数据库·mysql·macos