MySQL 存储过程空结果集错误Error 1329 No data 的异常处理
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,在MySQL的存储过程中,当查询到空结果集时会产生下面报错Error 1329 No data - zero rows fetched, selected, or processed解决方法:在存储过
千家信息网最后更新 2025年01月19日MySQL 存储过程空结果集错误Error 1329 No data 的异常处理在MySQL的存储过程中,当查询到空结果集时会产生下面报错
Error 1329 No data - zero rows fetched, selected, or processed
解决方法:
在存储过程中,添加异常处理
注意代码中的橙色部分的异常代码
Error 1329 No data - zero rows fetched, selected, or processed
解决方法:
在存储过程中,添加异常处理
注意代码中的橙色部分的异常代码
- delimiter $$
- CREATE PROCEDURE PROC_ADDSubscribers_diff()
- BEGIN
- DECLARE done INT DEFAULT FALSE;
- DECLARE Var_IMSI_NODE2 varchar(16);
- DECLARE Var_MSISDN_NODE2 varchar(19);
- DECLARE Var_IMEI_NODE2 varchar(16);
- DECLARE Var_Timestamp_NODE2 bigint(32);
- DECLARE Var_IMSI_NODE1 varchar(16);
- DECLARE Var_MSISDN_NODE1 varchar(19);
- DECLARE Var_IMEI_NODE1 varchar(16);
- DECLARE Var_Timestamp_NODE1 bigint(32);
- DECLARE Var_sqlcode INT DEFAULT 0;
- DECLARE cur1 CURSOR FOR select IMSI, MSISDN, IMEI, Timestamp from ADDSubscribers_node2;
- DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
- OPEN cur1;
- read_loop: LOOP
- FETCH cur1 INTO Var_IMSI_NODE2, Var_MSISDN_NODE2, Var_IMEI_NODE2, Var_Timestamp_NODE2;
- IF done IS TRUE THEN
- LEAVE read_loop;
- END IF;
- IF done IS FALSE THEN
- IF (Var_IMSI_NODE2 is not null) THEN
- BEGIN
- DECLARE no_data CONDITION FOR 1329;
- DECLARE CONTINUE HANDLER FOR no_data
- BEGIN
- SET Var_sqlcode=2000;
- END;
- select Timestamp, MSISDN, IMEI INTO Var_Timestamp_NODE1, Var_MSISDN_NODE1, Var_IMEI_NODE1 from dmcdbMTNGH.ADDSubscribers where IMSI = Var_IMSI_NODE2;
- IF Var_sqlcode = 2000 THEN
- start transaction;
- INSERT INTO ADDSubscribers_diff SELECT * FROM ADDSubscribers_node2 WHERE IMSI = Var_IMSI_NODE2;
- commit;
- ELSEIF Var_sqlcode = 0 THEN
- IF Var_Timestamp_NODE1 >= Var_Timestamp_NODE2 THEN
- select concat('The data on node01 is newer!') as Info;
- ELSE
- IF (Var_MSISDN_NODE1 <> Var_MSISDN_NODE2) || (Var_IMEI_NODE1 <> Var_IMEI_NODE2) THEN
- start transaction;
- INSERT INTO ADDSubscribers_diff SELECT * FROM ADDSubscribers_node2 WHERE IMSI = Var_IMSI_NODE2;
- commit;
- END IF;
- END IF;
- END IF;
- END;
- END IF;
- END IF;
- END LOOP;
- CLOSE cur1;
- select concat('The job',' is ','finished!') as Info;
- END$$
- delimiter ;
过程
存储
代码
结果
处理
方法
橙色
部分
查询
错误
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
河北汉博网络技术有限公司
宥马运动软件开发者
网络安全隐私原因
db2创建数据库连接
网络技术与信息技术的联系
迁安企业网络技术创造辉煌
access显示不能打开数据库
非关系型数据库的优点包含
示范数据库在哪
网络安全系统集成公司企业名录
武汉家具通软件开发有限公司
浙江web前端软件开发哪家可靠
天猫精灵遥控器数据库
阿里云东京服务器
计算机服务器运维工程师在哪学
软件开发的通用方法有哪些
没有公网ip服务器如何搭建网站
神武服务器人数
sql数据库完全删除
软件开发合同纠纷答辩状
mango数据库
我的世界服务器出租
赢时胜软件开发岗位
浅谈网络安全工作中的隐患
河间市有没有cs服务器
成都承办 届网络安全宣传周
宿州企业软件开发外包公司
lol服务器数据互通吗
江苏省社保服务器虚拟主机
建党百年做好校园网络安全