您好,欢迎来到步遥情感网。
搜索
您的当前位置:首页mysql通过存储过程简化INSERT和UPDATE_MySQL

mysql通过存储过程简化INSERT和UPDATE_MySQL

来源:步遥情感网


处理目的,当数据表中存在目标记录时,执行UPDATE;当数据表中不存在目标记录时,执行INSERT;从而减少一次查询数据库的过程

存储过程设计如下:

CREATE PROCEDURE `pro_SaveData`(IN `sinst` varchar(500),IN `supdt` varchar(500))
BEGIN
	#直接更新记录
 set @v_updsql=supdt; 
 prepare stmt from @v_updsql; 
 EXECUTE stmt; 
 
	#记录不存在,执行INSERT
	IF ROW_COUNT() =0 THEN
	set @v_intsql=sinst;
 prepare stmt from @v_intsql; 
 EXECUTE stmt; 
	END IF;
deallocate prepare stmt; 
END;


C#调用如下:

int r = data.ExecuteNonQuery(System.Data.CommandType.StoredProcedure,
 @"CALL pro_SaveData (' INSERT INTO `table` VALUES ('1', 'username')',
 'UPDATE table SET name='table222' WHERE id='1';')", null);

Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务