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

相关推荐
weixin_458580129 分钟前
如何用 blur 与 focusout 区分不冒泡与冒泡的失焦事件
jvm·数据库·python
一只fish28 分钟前
SQL 性能优化实战:从入门到极致的七重境界
数据库·sql·性能优化
qq_3493174829 分钟前
Layui如何修改表格单元格内文字的行间距
jvm·数据库·python
NCIN EXPE34 分钟前
SQL sever数据导入导出实验
数据库·sql·oracle
2301_7751481539 分钟前
Redis如何实现用户标签管理_利用Set结构存储唯一属性集合
jvm·数据库·python
xcLeigh43 分钟前
KES 数据库存储过程、函数、触发器实战
数据库·oracle·存储过程·触发器·函数
m0_5964063743 分钟前
mysql如何配置审计日志输出_mysql audit_log_format设置
jvm·数据库·python
geBR OTTE44 分钟前
flask后端开发(8):Flask连接MySQL数据库+ORM增删改查
数据库·mysql·flask
识君啊1 小时前
中小厂数据库事务高频面试题
java·数据库·mysql·隔离级别·数据库事务·acid