MySQL中的游标

转载 2013年12月02日 13:36:52

mysql的存储过程中循环读取数据表中的对象,应该如何实现呢?


MySQL中,游标(cursor)解决了这个问题。

游标多有哪几种操作呢:定义游标、打开游标、获取游标内容和关闭游标。

定义游标的语法如下:

声明的英文  cursor_name cursor for sql_statement

cursor_name为游标名,sql_statement为游标使用的sql语句

打开游标的语法:

open   cursor_name

获取游标内容的语法:

fetch cursor_name   into  variable1,variable2 …

variable1,为已经定义好的变量,当游标读取当前行的数据并存储到variable中,游标移动到下一行。

关闭游标的语法:

close cursor_name





mysql中游标的使用案例详解(学习笔记)

1.游标是啥玩意? 简单的说:游标(cursor)就是游动的标识,啥意思呢,通俗的这么说,一条sql取出对应n条结果资源的接口/句柄,就是游标,沿着游标可以一次取出一行。我给大家准备一张图: ...
  • xushouwei
  • xushouwei
  • 2016年08月13日 20:20
  • 13412

《MySQL必知必会学习笔记》:游标的使用

《MySQL必知必会学习笔记》:游标的使用游标是什么?? 《MySQL必知必会》这本书上面的定义如下: 游标是一个存储在MySQL服务器上的数据库查询,它不是一条select语句,而是被该语句所...
  • u010412719
  • u010412719
  • 2016年04月11日 20:59
  • 1309

MYSQL存储过程&循环&游标&IF$CASE

测试用表SET FOREIGN_KEY_CHECKS=0;-- ---------------------------- -- Table structure for stu -- ---------...
  • qq_26824159
  • qq_26824159
  • 2017年04月21日 11:07
  • 398

mysql 带参数的游标

这里是查询  把多个uuid以逗号(,)的格式去查询数据,把数据放入一张临时表 里面值得学习的是动态游标,mysql动态sql语法 DELIMITER $$ DROP PROCEDU...
  • u013427324
  • u013427324
  • 2016年05月12日 17:34
  • 845

MySql中游标的定义与使用方式

创建游标 首先在MySql中创建一张数据表: CREATE TABLE IF NOT EXISTS `store` ( `id` int(11) NOT NULL AUTO_INCREMENT, ...
  • liguo9860
  • liguo9860
  • 2016年03月10日 18:42
  • 26648

mysql:游标嵌套使用

解决方案: 从A表取一个字段的值和从B表取一个字段的值一一组合作为插入数据源。 drop procedure  if exists test_team_user; create PROCEDURE t...
  • hwhua1986
  • hwhua1986
  • 2016年11月21日 10:44
  • 618

Mysql 游标嵌套

最近又用需要用到游标,做个笔记,直接上代码了 -- 创建存储过程 delimiter // create procedure company_attachment_cursor(in _type...
  • wang124454731
  • wang124454731
  • 2017年03月31日 14:25
  • 1054

mysql:在while循环中开启关闭游标实现循环获取某表数据

向BG_OUTPAT_MASTER_INDEX 表插入100条数据,其中需要从sys_team表中获取team_id 的值,team_id只有10条数据,那么如何循环使用呢。 解决:在while循环...
  • hwhua1986
  • hwhua1986
  • 2016年11月21日 18:16
  • 1074

mysql中游标的运用

游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制;游标充当指针的作用;尽管游标能遍历结果中的所有行,但他一次只指向一行。...
  • u013030601
  • u013030601
  • 2016年12月27日 16:14
  • 3199

Mysql存储过程中游标的使用以及错误处理

  DECLARE done INT DEFAULT 0;  DECLARE dept_Id int;    DECLARE cur1 CURSOR FOR select deptId from de...
  • lidane03
  • lidane03
  • 2009年07月15日 17:12
  • 1141
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MySQL中的游标
举报原因:
原因补充:

(最多只允许输入30个字)