【mysql游标使用以及需要注意的地方】 您所在的位置:网站首页 sqlsever游标 【mysql游标使用以及需要注意的地方】

【mysql游标使用以及需要注意的地方】

2023-05-21 18:11| 来源: 网络整理| 查看: 265

Mysql游标使用

游标:用来存储查询结果集的数据类型,在存储过程和函数中可以使用游标对结果集 进行 处理

用途:mysql使用游标来遍历,相当于把select出来的结果当成了个数组, 从前至后,一个一个遍历,储过程和函数中可以使用游标对结果集 进行 处理 只能在函数或者存储过程的括号中使用,跳出则无法使用噢!

举例: 创建存储过程pr_ 注意的点: DECLARE CONTINUE HANDLER FOR NOT FOUND SET no=1; NOT FOUND 也可设置为sqlstate ‘02000’ 如: declare continue handler for sqlstate ‘02000’ set no=1;

注意这为固定格式,代表游标没有找到,或者遍历完后设置no=1 //1为true no这个名字可以自取,用于循环的条件,当全部遍历完设置为1 结束循环 分为几个步骤: 声明游标: DECLARE 游标名称 CURSOR FOR 查询语句 打开游标 OPEN 游标名称 获取游标记录 FETCH 游标名称 INTO 变量 关闭游标 CLOSE 游标名称 //使用完后得关闭

案例: 在这里插入图片描述

例如:我想更改name全为test,在编程语言可以用数组来遍历,而在mysql中可以使用游标来遍历

步骤如下: 创建存储过程PR_TEST_CURSOR ,把遍历并修改的过程写在存储过程中:

DELIMITER // CREATE PROCEDURE pro_users() BEGIN DECLARE result VARCHAR(100); DECLARE done INT; DECLARE cur_1 CURSOR FOR SELECT name FROM my_Test; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1; SET done=0; OPEN cur_1; WHILE done=0 do FETCH cur_1 into result; UPDATE my_Test SET name='MySQL' WHERE name=result; END WHILE; CLOSE cur_1; END; //

学习网址:http://c.biancheng.net/view/7823.html



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有