mysql游标执行
错误-mysql游标执行,mysql,Mysql,错误- 错误 MySQL说:文档 1329-无数据-获取、选择或处理的行数为零 在执行调用的存储过程之后 call cursorproc (@p_out); select @p_out as temp; create procedure cursorproc(OUT p_out DECIMAL(10,2)) begin declare l_salary, l_total DECIMAL(10,2); declare cur_1 cursor for select line_
错误 MySQL说:文档 1329-无数据-获取、选择或处理的行数为零
在执行调用的存储过程之后
call cursorproc (@p_out);
select @p_out as temp;
create procedure cursorproc(OUT p_out DECIMAL(10,2))
begin
declare l_salary, l_total DECIMAL(10,2);
declare cur_1 cursor for select line_distance from elements;
open cur_1;
set l_total = 0;
loop
fetch cur_1 into l_salary;
set l_total = l_total + l_salary;
end loop;
close cur_1;
set p_out = l_total;
end;
以下代码已成功执行-存储过程
call cursorproc (@p_out);
select @p_out as temp;
create procedure cursorproc(OUT p_out DECIMAL(10,2))
begin
declare l_salary, l_total DECIMAL(10,2);
declare cur_1 cursor for select line_distance from elements;
open cur_1;
set l_total = 0;
loop
fetch cur_1 into l_salary;
set l_total = l_total + l_salary;
end loop;
close cur_1;
set p_out = l_total;
end;
有什么办法可以解决我们所缺少的问题吗?请提供帮助。在读取数据时,您应该检查数据集的结尾。 看看这里的例子- 另外,我建议您避免打开游标-
SELECT SUM(line_distance) INTO @var FROM elements;
SELECT @var;