把自己这几天写的应用游标的存储过程整理了一下,很基础,存一份模版,以后备用;
--1.将mysql分隔符从;设置为//
DELIMITER //
DROP PROCEDURE IF EXISTS `abby_test` ;
--2.定义存储过程
CREATE DEFINER = `root`@`%` PROCEDURE `abby_test` ()
BEGIN
--3.声明所需变量
DECLARE a_demo VARCHAR (100);
DECLARE b_demo BIGINT;
--4.定义游标结束标识,默认为0
DECLARE done_cursor_abby_test INT DEFAULT 0;
--5.定义游标
DECLARE cursor_abby_test CURSOR FOR
SELECT a,b FROM `xxxx` where 条件;
--6.当SQLSTATE符合条件的时候会将游标结束标识设置为1
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done_cursor_abby_test = 1;
--7.打开游标
OPEN cursor_abby_test;
--8.读取游标中数据
FETCH cursor_abby_testINTO a_demo,b_demo;
--9.符合轮询条件时继续往下走
WHILE done_cursor_abby_test <> 1 DO
~~~~~执行特定SQL~~~~~~
FETCH cursor_abby_testINTO a_demo,b_demo;
END WHILE;
--10.关闭游标
CLOSE cursor_abby_test;
END ;//
--11.将mysql分隔符从//设置为;
DELIMITER ;
本文详细介绍了一种在MySQL中使用游标和存储过程的方法,包括如何定义存储过程,声明变量,创建游标,以及如何处理游标结束状态。通过具体步骤展示了如何遍历查询结果并执行特定操作。

1万+

被折叠的 条评论
为什么被折叠?



