MySQL 存储过程空结果集错误Error 1329 No data 的异常处理
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,在MySQL的存储过程中,当查询到空结果集时会产生下面报错Error 1329 No data - zero rows fetched, selected, or processed解决方法:在存储过
千家信息网最后更新 2026年10月31日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安全错误
数据库的锁怎样保障安全
互联网金融科技
互联网科技产业
中关村互联网科技集团
中国互联网科技工作委员会毛军
奇酷互联网科技
齐家互联网科技
远信互联网科技
新浪科技互联网
金融科技和互联网金融
中正互联网科技招聘
互联网科技生活的内容
世界互联网科技公司市值排名
互联网金融科技展
互联网金融科技名词解释
广州富喜互联网络科技
美国互联网科技公司
萌小萌互联网科技河南有限公司
西安左小互联网科技有限公司
求路客互联网科技电话
每日互联网科技新闻
互联网科技公司税收优惠
新华互联网科技学院
互联网科技资迅
嘟嘟瓜互联网科技
润盈互联网科技
甘肃拓世互联网科技有限公司
上海钢联属于互联网科技股吗
广州富喜互联网络科技
陕西彩京云互联网科技有限公司
平安好医生打造互联网科技医疗