mysql游标的使用
2015-07-24 17:15
519 查看
drop procedure IF EXISTS test_proc; delimiter // create procedure test_proc() begin -- 声明一个标志done, 用来判断游标是否遍历完成 DECLARE done INT DEFAULT 0; -- 声明一个变量,用来存放从游标中提取的数据 -- 特别注意这里的名字不能与由游标中使用的列明相同,否则得到的数据都是NULL DECLARE tname varchar(50) DEFAULT NULL; DECLARE tpass varchar(50) DEFAULT NULL; -- 声明游标对应的 SQL 语句 DECLARE cur CURSOR FOR select user_name, password from user_t; -- 在游标循环到最后会将 done 设置为 1 DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; -- 执行查询 open cur; -- 遍历游标每一行 REPEAT -- 把一行的信息存放在对应的变量中 FETCH cur INTO tname, tpass; if not done then -- 这里就可以使用 tname, tpass 对应的信息了 select tname, tpass; end if; UNTIL done END REPEAT; CLOSE cur; end // delimiter ; call test_proc()
相关文章推荐
- mysql优化limit查询语句的5个方法
- MYSQL数据插入 乱码问题 default-character-set=latin1改成default-character-set=utf8 在my.ini文件中。需要改动两处
- MySQL索引类型一览 让MySQL高效运行起来
- mysql主从配置
- mysql中orderby和limit同时使用的bug
- MySQL数据库服务器安装标准
- mysql函数计算地表两点间距离
- [MySQL] gap lock/next-key lock浅析
- MySQL中having 与where 的异同点
- xtrabackup备份方式搭建一个mysql slave
- MySQL 集群方案相关问题
- 经典mysql连接查询例题
- MYSQL---多表更新
- xtrabackup 热备 mysql
- 【MySQL】解决windows下mysql匿名登陆无法使用mysql数据库的问题
- Mysql 二进制日志
- mysql的jdbc大量数据操作记录
- Mysql中的Cascade ,NO ACTION ,Restrict ,SET NULL
- mysql 下 计算 两点 经纬度 之间的距离(转)
- mysql union和union all 的区别以及使用