游标的语法
-- 定义游标状态变量 DECLARE done INT DEFAULT 0;-- 定义游标 DECLARE cursor_name CURSOR FOR ( SELECT select_expr FROM table_references ) -- 设置当游标查不到数据的时候设置为1 DECLARE CONTINUE HANDLER NOT found SET done = 1; OPEN cursor_name;-- 打开游标 FETCH cursor_name INTO variable_name;-- 取出游标的数据放入对应位置的变量中 CLOSE cursor_name;-- 使用完游标一定要关闭 -- 1.FETCH cursor_name INTO 到的变量名称需要使用DECLARE定义,且顺序必须在游标定义之前。 -- 2.CURSOR FOR 查询出来的数据列数必须和 FETCH cursor_name INTO 到的变量数量一致,否则会取不到数据,为NULL。 -- 3.FETCH cursor_name INTO 到的变量名称不能与 SELECT 查询列名称一致,使用AS别名也不行
知识扩展:
1.MySQL游标取值为空的原因-->https://www.cnblogs.com/sidesky/p/3432110.html
2.MySQL游标嵌套-->https://www.cnblogs.com/phao123/p/6006780.html
3.MySQL游标取出空值的Bug-->http://www.cnblogs.com/leohahah/p/9401343.html
4.MySQL中游标的定义与使用方式-->https://blog.csdn.net/liguo9860/article/details/50848216