我有这个存储过程:
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 语句而不编写所有游标代码来获得我想要的结果?