使用游标在循环中选择

时间:2012-08-31 13:51:43

标签: mysql

我有这个存储过程:

    DELIMITER //
DROP PROCEDURE IF EXISTS cursor_example//
CREATE PROCEDURE cursor_example()
BEGIN
    DECLARE niche_id INT;
    DECLARE niche_name VARCHAR(100);

    DECLARE curl CURSOR FOR SELECT * FROM `niche`;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;

    OPEN curl;
      my_loop:LOOP
        FETCH curl INTO niche_id,niche_name;
        IF done=1 THEN
           LEAVE my_loop;
        END IF;      
      END LOOP my_loop;
    CLOSE curl;
END//

DELIMITER ;

我想输出curl提取的所有内容。所以我想把SELECT语句放在循环内部或外部..但是这不会给我想要的结果。如何从该游标中获取所有sql结果。

与其他简单的未绑定 - SELECT语句相比,使用游标有什么好处。我的意思是我可以通过简单地使用select语句而不编写所有游标代码来获得我想要的结果吗?

0 个答案:

没有答案