小编Abh*_*Dey的帖子

使用游标最后返回的行重复

我有一个像这样的名为TRY的表....

try(name,sal) values('tony',10000),('david',20000),('rony',30000),('sami',40000)
Run Code Online (Sandbox Code Playgroud)

现在我在一个过程中使用游标通过变量显示工资列的所有值.这样做我试图弄清楚光标是否有效,因为我是光标的新手而且我已经知道了cursor逐个获取每个选定的行.我正在执行以下代码...

 delimiter ;;

 create procedure me()

  begin

    declare done int default 0;

    declare var int;

    declare cur cursor for select sal from try;

    declare continue handler for not found set done=1;

  open cur;

    curloop:loop

     if done=1 then

    leave curloop;

     end if;

       fetch cur into var;

       select var;

    end loop;

 close cur;

end;;
Run Code Online (Sandbox Code Playgroud)

使用这个我正确得到SAL列的所有值,但问题是它返回了一个额外的行,它与SAL列的最后一个值重复,即我重复了最后一个值.

请解决我的问题.谢谢.

mysql cursor

1
推荐指数
1
解决办法
1585
查看次数

标签 统计

cursor ×1

mysql ×1