返回顶部

收藏

使用 LOOP 和 FETCH 来读取 MySQL 游标

更多

sql代码

mysql>
mysql> delimiter $$
mysql> CREATE PROCEDURE myProc()
    -> BEGIN
    ->   DECLARE l_sale_id INT;
    ->   DECLARE l_last_sale INT DEFAULT 0;
    ->
    ->   DECLARE sale_csr CURSOR FOR
    ->     SELECT id
    ->       FROM employee;
    ->
    ->   DECLARE CONTINUE HANDLER FOR NOT FOUND SET l_last_sale=1;
    ->
    ->   OPEN sale_csr;
    ->   sale_loop:LOOP
    ->     FETCH sale_csr INTO l_sale_id;
    ->     IF l_last_sale THEN
    ->       LEAVE sale_loop;
    ->     END IF;
    ->     select l_sale_id;
    ->   END LOOP sale_loop;
    ->   CLOSE sale_csr;
    ->
    -> END$$
Query OK, 0 rows affected (0.00 sec)

mysql>
mysql> delimiter ;
mysql> call myProc();

标签:游标,MySQL

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. lalor 发表 2016-08-27 13:25:02 Flask源码剖析
  2. 谢权 发表 2016-09-03 13:41:50 备份与恢复 MySQL Database 或Table
  3. linux@linux.cn (linu 发表 2016-09-16 00:56:00 MySQL 8.0.0 发布
  4. admin 发表 2016-09-25 10:23:47 MySQL的Warning之「BINLOG_FORMAT = STATEMENT」
  5. 孤独求学人 发表 2016-03-16 10:34:50 mysql 备份指定前缀的数据库信息
  6. M020-上海-Ctrip-Scott 发表 2016-10-19 13:34:46 MySQL表字段字符集不同导致的索引失效问题
  7. 小码哥 发表 2016-11-08 03:45:55 性能提升利器:MySQL 5.7多源主从复制的独特性
  8. Nix.Huang 发表 2016-11-21 13:12:42 mysql实现分组排序[转]
  9. admin 发表 2016-11-30 12:11:18 MySQL中如何实现按每隔10分钟进行分组统计
  10. admin 发表 2016-01-04 03:37:41 MySQL参数max_allowed_packet
  11. admin 发表 2016-12-15 02:20:30 MySQL的in运算符
  12. 惜分飞 发表 2016-12-25 15:50:37 mysql ibd文件恢复

发表评论