zoukankan      html  css  js  c++  java
  • Mysql_游标

    MySQL中的游标是一个十分重要的概念。游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。MySQL中的游标的语法如下:

    DECLARE cursor-name CURSOR FOR SELECT ...; /* 声明一个游标,名称为cursor-name,并用CURSOR FOR SELECT*/
    DECLARE CONTINUE HANDLER FOR NOT FOUND /*指定当遍历完结果集后,游标如何继续处理*/
    OPEN cursor-name; /*打开游标 */
    FETCH cursor-name INTO variable [, variable]; /* 将变量赋值给游标*/
    CLOSE cursor-name; /*使用后关闭游标*/

     一个具体的例子如下:

    复制代码
    DELIMITER //
    CREATE PROCEDURE `proc_CURSOR` (OUT param1 INT)
    BEGIN
      DECLARE a, b, c INT;
      DECLARE cur1 CURSOR FOR SELECT col1 FROM table1;
      DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1;
      OPEN cur1;
      SET b = 0;
      SET c = 0;
      WHILE b = 0 DO
       FETCH cur1 INTO a;
       IF b = 0 THEN
       SET c = c + a;
       END IF;
      END WHILE;
      CLOSE cur1;
      SET param1 = c;
    END //
    复制代码

      其中,DECLARE cur1 CURSOR FOR SELECT col1 FROM table1;

      表示将从table1表中选取col1列的内容放到游标curl中,即每次游标遍历的结果都放在curl中,要注意游标只能向前遍历,而不能向后,并且注意,游标不能更新,最后关闭游标。

  • 相关阅读:
    全栈的苦逼和崛起
    Swift内部类调用外部类方法、属性的变通
    Assets.xcassets误删后的恢复
    UITableViewCell嵌套UITableView的正确姿势
    GPU Accelerated Computing with Python
    Windows 10创意者更新ISO发布!官方下载
    Amazing iOS Tips
    self-sizing cell的一个问题
    buf.swap32()
    buf.swap16()
  • 原文地址:https://www.cnblogs.com/ingstyle/p/4368430.html
Copyright © 2011-2022 走看看