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

相关推荐
m0_377618237 小时前
如何在 pytest 中通过组合多个 fixture 实现参数化测试
jvm·数据库·python
djjdjdjdjjdj7 小时前
Golang如何做本地缓存加速_Golang本地缓存教程【核心】
jvm·数据库·python
2301_764150567 小时前
如何在 WordPress AMP 网站中为特定模板禁用 AMP 渲染
jvm·数据库·python
2301_773553627 小时前
bootstrap怎么给div添加背景图片
jvm·数据库·python
2301_773553627 小时前
CSS如何通过CSS变量实现组件颜色隔离_提升组件样式独立性
jvm·数据库·python
2401_871696527 小时前
如何让按钮悬停时阴影位置保持固定,仅按钮自身位移?
jvm·数据库·python
炸炸鱼.7 小时前
MongoDB 数据库应用完整手册
数据库·mongodb
踩着两条虫7 小时前
VTJ.PRO 新手入门:从环境搭建到 AI 生成首个 Vue3 应用
前端·javascript·数据库·vue.js·人工智能·低代码
响叮当!7 小时前
Milvus 向量数据库使用指南
数据库·milvus
吕源林7 小时前
CSS如何使用Bootstrap网格嵌套布局_在栅格内创建内部行
jvm·数据库·python