济南住房和城乡建设局网站,wordpress导入链接生成文章,建筑八大员报考时间和条件,盐山做网站DBAPI实现数据不存在即插入、存在即更新 场景 往数据库插入数据的时候#xff0c;需要先判断一下记录是否在数据库已经存在#xff0c;如果已经存在就更新记录#xff0c;如果不存在#xff0c;才插入数据。 实现方案 采用存储过程实现#xff0c;以mysql为例子 创建存储过… DBAPI实现数据不存在即插入、存在即更新 场景 往数据库插入数据的时候需要先判断一下记录是否在数据库已经存在如果已经存在就更新记录如果不存在才插入数据。 实现方案 采用存储过程实现以mysql为例子 创建存储过程 在数据库执行以下语句创建存储过程 CREATE PROCEDURE upsert(IN v_id INT, IN v_name VARCHAR(255))BEGIN DECLARE v_count INT; -- 尝试查找是否存在具有相同唯一键的记录 SELECT count(1) INTO v_count FROM student WHERE id v_id; -- 判断记录是否存在 IF v_count 0 THEN -- 更新记录 UPDATE student SET name v_name WHERE id v_id; ELSE -- 插入新记录 INSERT INTO student (id, name) VALUES (v_id, v_name); END IF;END; ❝ 调用存储过程传入两个参数会根据第一个参数id判断数据是否存在id存在就更新name不存在就插入数据 例如 call upsert(3,abc) 创建API 设置 id name 两个参数 sql填写call upsert( #{id}, #{name} ) 保存即可 访问API 先插入一条数据 可以看到数据新增 再传入同一个id,可以看到数据更新 本文由 mdnice 多平台发布