Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql游标循环选择_Mysql_Loops_Cursor_Handler_Fetch - Fatal编程技术网

mysql游标循环选择

mysql游标循环选择,mysql,loops,cursor,handler,fetch,Mysql,Loops,Cursor,Handler,Fetch,我正在写一个程序,它将通过一个表格收集所有前10个结果。我正在使用游标,然后获取结果。我对如何打印结果有点困惑。我使用了select语句来获得这些结果,但我被告知有一个错误 任何帮助都将不胜感激。谢谢 create procedure plant_list() begin declare v_plant_id integer(5); declare v_common_name varchar(30); declare v_scientific_name varchar(20); declar

我正在写一个程序,它将通过一个表格收集所有前10个结果。我正在使用游标,然后获取结果。我对如何打印结果有点困惑。我使用了select语句来获得这些结果,但我被告知有一个错误

任何帮助都将不胜感激。谢谢

create procedure plant_list()
begin
declare v_plant_id integer(5);
declare v_common_name varchar(30);
declare v_scientific_name varchar(20);


declare finished boolean default false;

declare cur_top_ten cursor for
    select P.plant_id, common_name, concat(genus, ' ', species)
    from plants P
        join plant_taxonomy PT on P.plant_id = PT.plant_id
    order by list_price desc
    limit 10
    ;

declare continue handler for not found set finished = true;

open cur_top_ten;
curloop: loop
    fetch cur_top_ten into v_plant_id, v_common_name, v_scientific_name;
    if finished then
        close cur_top_ten;
        set finished = false;
        leave curloop;
    end if

    select v_plant_id, v_common_name, v_scientific_name;


end loop curloop;

end;
#

结尾if后缺少一个分号

  if finished then
    close cur_top_ten;
    set finished = false;
    leave curloop;
  end if;

结尾if后缺少一个分号

  if finished then
    close cur_top_ten;
    set finished = false;
    leave curloop;
  end if;