从mysql V5.5开始,进行了一次大的改变,就是将InnoDB作为默认的存储引擎。InnoDB支持事务,而且拥有相关的RDBMS特性:ACID事务支持,数据完整性(支持外键),灾难恢复能力等等。
现在简单总结一下游标的知识。
(一),认识游标(cursor)
就是一个可读的标识,用来标识数据取到什么地方了。
(二),游标特性
1,只读
2,不滚动
3,不敏感的
(三),使用游标
需要强调的是,游标必须在定义处理程序之前被定义,但变量必须在定义游标之前被定义,顺序就是变量定义-游标定义-处理程序。
1.定义游标
DECLARE cursor_name CURSOR FOR select_statement
这个语句声明一个游标。也可以在子程序中定义多个游标,一个块中的每一个游标必须命名唯一。声明游标后也是单条操作的。
2. 游标OPEN
OPEN cursor_name
这个语句打开先前声明的游标。
3. 游标FETCH
FETCH cursor_name INTO var_name [, var_name] ...
这个语句用指定的打开游标读取下一行(如果有下一行的话),并且前进游标指针至该行。
4. 游标CLOSE
CLOSE cursor_name
这个语句关闭先前打开的游标,注意,用完后必须关闭。
(四)示例,下面是一个存储过程,里面用到游标,逐条更新数据(批量更新数据)

BEGINDECLARE  no_more_record INT DEFAULT 0;DECLARE  pID BIGINT(20);DECLARE  pValue DECIMAL(15,5);DECLARE  cur_record CURSOR FOR   SELECT colA, colB from tableABC;  /*首先这里对游标进行定义*/DECLARE  CONTINUE HANDLER FOR NOT FOUND  SET  no_more_record = 1; /*这个是个条件处理,针对NOT FOUND的条件,当没有记录时赋值为1*/OPEN  cur_record; /*接着使用OPEN打开游标*/FETCH  cur_record INTO pID, pValue; /*把第一行数据写入变量中,游标也随之指向了记录的第一行*/WHILE no_more_record != 1 DOINSERT  INTO testTable(ID, Value)VALUES  (pID, pValue);FETCH  cur_record INTO pID, pValue;END WHILE;CLOSE  cur_record;  /*用完后记得用CLOSE把资源释放掉*/
END

mysql游标示例mysql游标简易教程相关推荐

  1. mysql c 游标_mysql游标示例 mysql游标简易教程

    从mysql V5.5开始,进行了一次大的改变,就是将InnoDB作为默认的存储引擎.InnoDB支持事务,而且拥有相关的RDBMS特性:ACID事务支持,数据完整性(支持外键),灾难恢复能力等等. ...

  2. mysql的语句啰嗦_sql简易教程

    讲干货,不啰嗦,本教程主要基于Mysql数据库,讲解sql的基本使用. 数据库主要包括增.删.改.查等基本操作,以下为设计到的常用的sql语句: 一.查 1.select 语法查询 SELECT co ...

  3. oracle简单的游标示例,Oracle游标简单示例

    使用游标打印员工姓名和薪水 set serveroutput on; declare cursor cemp is select ename,sal from emp; cname emp.ename ...

  4. mysql 命令 示例,mysql语句大全

    mysql 与 mssql 语法十分相似,懂一门另一门也就差不多了,下面来总结 mysql 都有哪些语句. 1.登录 mysql 语法如下:mysql -u用户名 -p用户密码 例: 1)登录本机:m ...

  5. mysql游标进阶_mysql进阶(三)游标简易教程

    mysql游标简易教程 从mysql V5.5开始,进行了一次大的改变,就是将InnoDB作为默认的存储引擎.InnoDB支持事务,而且拥有相关的RDBMS特性:ACID事务支持,数据完整性(支持外键 ...

  6. mysql进阶(三)游标简易教程

    mysql游标简易教程 从mysql V5.5开始,进行了一次大的改变,就是将InnoDB作为默认的存储引擎.InnoDB支持事务,而且拥有相关的RDBMS特性:ACID事务支持,数据完整性(支持外键 ...

  7. MySQL存储过程:利用游标+临时表实现查询

    MySQL存储过程使用游标.临时表实现动态SQL查询 2020.3.24 用能第二周周二上午,任务需求:编写存储过程查询监测设备状态以及目标监测设备状态.(任务完成) 改存储过程包含了大量相关知识,特 ...

  8. mysql 存储过程声明式游标_Mysql 存储过程中使用游标循环读取临时表

    游标 游标(Cursor)是用于查看或者处理结果集中的数据的一种方法.游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力. 游标的使用方式 定义游标:Declare 游标名称 CURSOR ...

  9. 带有MySQL和Bootstrap的Django 3教程和CRUD示例

    目录 Django 3功能 先决条件 Django 3教程,第1步--创建MySQL数据库 Django 3教程,第2步--初始化新的虚拟环境 Django 3教程,第3步--安装Django和MyS ...

最新文章

  1. [转] 大连理工大学部分有效FTP列表1.0
  2. leetcode算法题--从尾到头打印链表
  3. 百度工程师控制公司服务器“挖矿”:4个月赚10万 判刑3年
  4. 神策数据正式成为国家级信创工委会成员单位!
  5. SQL优化二(SQL性能调优)
  6. PyTorch 1.0 中文官方教程:迁移学习教程
  7. Windows下使用taskkill 命令批量结束进程
  8. OpenAI公布强化学习新算法,可控制复杂机器人
  9. IE成长之路--OSPF报文类型
  10. ACM之Java速成(1)
  11. 延时电路c语言程序,rc延时电路工作原理
  12. 王牌英雄怎么服务器维护了,王牌英雄steam版无法运行问题解决方法
  13. 微机实验——十字路口交通灯控制器
  14. Windows Phone网页体验版
  15. TB6612FNG模块使用说明
  16. Druid连接池实现数据库加密
  17. Python入门习题大全——检查用户名
  18. 计算机网络微课堂CSMA/CD协议-争用期碰撞时刻以及收到碰撞信号的时间时间的推导
  19. 学习C++的常用网站
  20. a a c语言表达式是,c语言中,已知a=12,则表达式a+=a-=a*=a的结果是什么,求步骤

热门文章

  1. NBT:用16S及18S rRNA全长进行微生物多样性研究
  2. python使用matplotlib可视化、自定义移除Y轴指定轴刻度标签(removing specific axis ticks in matplotlib y axis)
  3. pandas获取dataframe数据列的数据类型、获取dataframe每类数据类型数据列的个数、使用select_dtypes函数、include参数以及exclude参数按照数据类型筛选数据
  4. python使用imbalanced-learn的RandomUnderSampler方法进行下采样处理数据不平衡问题
  5. 高斯混合模型(GaussianMixture Model, GMM)聚类、可视化最优协方差形式、通过TSNE进行结果可视化分析、抽取核心特征因子
  6. 机器学习算法与技术简介
  7. Python --金字塔
  8. PacBio But Not Illumina Technology Can Achieve Fast, Accurate and Complete Closure of the High GC, C
  9. Read correction for non-uniform coverages 读校正非均匀覆盖
  10. const reference const