返回顶部
首页 > 资讯 > 数据库 >mysql基础五 游标
  • 256
分享到

mysql基础五 游标

2024-04-02 19:04:59 256人浏览 八月长安
摘要

一、游标的定义: create procedure p12()begin declare row_name varchar(20);declare row_num int; declare myC

一、游标的定义:

create procedure p12()
begin

declare row_name varchar(20);
declare row_num int;

declare myCursor cursor for select name,num from Goods;//定义游标myCursor

open myCursor;//打开游标myCursor

fetch myCursor into row_name,row_num;//使用游标myCursor获取第一行

select row_name, row_num;

fetch myCursor into row_name,row_num;//使用游标myCursor获取第二行;每fetch一次游标就自动往下游一次.

select row_name, row_num;

close myCursor;//关闭游标myCursor

end;

二、游标+repeat循环-->实现遍历行:
create procedure p13()
begin

declare row_gid int;
declare row_name varchar(20);
declare row_num int;

declare row_count int;
declare i int default 0;

declare myCursor cursor for select gid,name,num from goods;

select count(1) into row_count from goods;

open myCursor;

repeat

fetch myCursor into row_gid,row_name,row_num;

select row_gid,row_name,row_num;

set i=i+1;

until i>row_count end repeat;

close myCursor;

end;

三、游标+continue handler实现遍历行:

continue handler 当fetch触发此handler后,后面的语句继续执行。
所以会多执行一次select row_gid,row_name,row_num;
此handler常用。

create procedure p15()

begin

declare row_gid int;
declare row_name varchar(20);
declare row_num int;
declare you int default 1;

declare myCursor cursor for select gid,name,num from goods;

declare continue handler for NOT FOUND set you=0;

open myCursor;

repeat

fetch myCursor into row_gid,row_name,row_num;

select row_gid,row_name,row_num;

until you=0 end repeat;

close myCursor;

end;

四、游标+exit handler实现遍历行:

exit handler 当fetch触发此handler后,触发后后面的语句不再执行。
所以select row_gid,row_name,row_num;不会再被执行。
此handler不常用。

create procedure p16()

begin

declare row_gid int;
declare row_name varchar(20);
declare row_num int;
declare you int default 1;

declare myCursor cursor for select gid,name,num from goods;

declare exit handler for NOT FOUND set you=0;

open myCursor;

repeat

fetch myCursor into row_gid,row_name,row_num;

select row_gid,row_name,row_num;

until you=0 end repeat;

close myCursor;

end;

五、游标+while实现遍历行:

create procedure p15()

begin

declare row_gid int;
declare row_name varchar(20);
declare row_num int;
declare over int default 1;

declare myCursor cursor for select gid,name,num from goods;

declare continue handler for NOT FOUND set over =0;

open myCursor;

fetch myCursor into row_gid,row_name,row_num;

while over do

select row_gid,row_name,row_num;

fetch myCursor into row_gid,row_name,row_num;

end while;

close myCursor;

end;

六、游标+loop实现遍历行:

-- loop 与 leave,iterate 实现循环
-- loop 标志位无条件循环;leave 类似于Java break 语句,跳出循环,即跳出 begin end;
iterate 类似于java continue ,结束本次循环,继续下一次循环。
--loop的优点在于可以根据条件结束本次循环或者根据条件跳出循环。

create procedure p17()

begin

declare row_gid int;
declare row_name varchar(20);
declare row_num int;
declare over int default 0;

declare myCursor cursor for select gid,name,num from goods;

declare continue handler for NOT FOUND set over=1;

open myCursor;

cursor_loop:loop

fetch myCursor into row_gid,row_name,row_num;

if over then

leave cursor_loop;

end if;

select row_gid,row_name,row_num;

end loop cursor_loop;

close myCursor;

end;

您可能感兴趣的文档:

--结束END--

本文标题: mysql基础五 游标

本文链接: https://lsjlt.com/news/47507.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mysql基础五 游标
    一、游标的定义: create procedure p12()begin declare row_name varchar(20);declare row_num int; declare myC...
    99+
    2024-04-02
  • mysql基础(五)查询缓存
    缓存的有缺点     1、如果命中缓存,直接从缓存中返回,减少分析和执行SQL语句的过程,提高查询效率     2、缓存会带来...
    99+
    2024-04-02
  • Linux基础篇之五基础命令 ---- 3
    在linux中,我们经常需要查找某些文件,以及文件所在目录等。那么我们需要用到一些基本的文件查找类命令。文件查找命令主要有以下几个:·which    查看命令或可执...
    99+
    2024-04-02
  • python基础语法(五)
    目录 函数函数是什么语法格式函数参数函数返回值 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒个人主页 &#...
    99+
    2023-10-24
    python java 前端 学习方法 笔记 经验分享
  • Python基础知识入门(五)
    Python基础知识入门(一) Python基础知识入门(二) Python基础知识入门(三) Python基础知识入门(四) 一、模块应用         模块是一个包含所有定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引...
    99+
    2023-09-04
    开发语言 python 基础学习
  • MySQL 游标
    光标声明声明光标DECLARE cursor_name CURSOR FOR select_statement这个语句声明一个光标。也可以在子程序中定义多个...
    99+
    2024-04-02
  • MySQL游标
    阅读目录 定义游标的作用游标的使用游标语法条件处理 创建表:test1、test2、test3写一个函数,计算 test1 表中 a、b 字段所有的和测试游标过程解析 定义 游标(Cursor)是处理数据的一种方法,为了...
    99+
    2023-08-30
    mysql 数据库 java
  • MySQL基础:基础查询
    DQL语言:数据查询语言 3.1 基础查询 语法 select 查询列表 from 表名; 特点 查询列表可以是字段、常量、表达式、函数,也可以是多个 查询结果是一个虚拟表 示例 1、查询单个字段 selec&#...
    99+
    2016-06-13
    MySQL基础:基础查询
  • 教你用Vue基础语法来写一个五子棋小游戏
    目录前言1.绘制游戏区域和游戏元素2.点击事件3.悔棋功能4.判断胜负写在最后前言 在之前的文章中,用JS的基础语法写了一个五子棋小游戏# 如何使用原生JS,快速写出一个五子棋小游戏...
    99+
    2024-04-02
  • Net内存管理五大基础
    目录1.小对象怎么处理的?2.较大的对象会怎样?3.垃圾收集器可以在不同的模式下运行以优化性能4.引用不足会在性能和内存效率之间折衷5.对象固定可以创建在托管和非托管...
    99+
    2024-04-02
  • MySQL基础
    1. 数据库 1.1 数据库概述 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。 什么是数据库管理系统 数据库管理系统(Data...
    99+
    2019-04-23
    MySQL基础
  • MySQL基础
    MySQL概述 MySQL是关系型数据库,开源。 关系型数据库:ER模型图,关系型数据库存放的是各种实体间的关系。 以商城为例: 常见关系型数据库:MySQL、Oracle、SQLServer、DB2。 MySQL安装 官网找到MyS...
    99+
    2021-04-01
    MySQL基础 数据库入门 数据库基础教程 数据库 mysql
  • MySQL 基础
    MySQL 基础 MySQL 基础 SQL 介绍 DDL(数据定义语言) 数据库操作 数据表操作 常用约束 约束操作 索引操作 DML(数据操作语言) SELECT - 从数据库表中获取数据 UPDATE -...
    99+
    2021-06-05
    MySQL 基础
  • MySQL 游标 - G
    MySQL 游标   SQL语句是“面向集合编程”,重点在于“获得什么”,而不是“如何获得”。 有时候我们不需要对查询结构集的每一条都进行相同的操作,而是只操作其中的某些行,这时候就需要面向过程的编程方法,而游标就是面向过程编程...
    99+
    2016-08-31
    MySQL 游标 - G
  • Java基础第五篇 实施接口
    目录 1、interface2、分离接口的意义3、实施多个接口 4、总结在上一篇文章封装与接口中,private关键字封装了对象的内部成员。经过封装,产品隐藏了内...
    99+
    2024-04-02
  • python之基础篇(五)——数据类型
    防伪码:忘情公子著  前面四篇我们已经讲了许多概念方面的东西,从此篇开始,我们将真正开始学习python。  在上一篇中,我们已经说过python有哪些核心数据类型,接下来我们将一一细说这些数据类型。python数据类型之数字类型  pyt...
    99+
    2023-01-31
    数据类型 基础 python
  • Python基础知识(五)--数据类型
      #标识符,以字母或下划线开头,不与关键字重复  #不使用系统内置标识符、函数名、异常名  #不使用开头和结尾都是下划线作为自定义标识符名  #以免与系统定义的特殊方法或变量冲突  #当循环不影响实际变量的时候,可以在for..in中使用...
    99+
    2023-01-31
    基础知识 数据类型 Python
  • 基于Python实现五子棋游戏
    本文实例为大家分享了Python实现五子棋游戏的具体代码,供大家参考,具体内容如下 了解游戏的规则是我们首先需要做的事情,如果不知晓规则,那么我们肯定寸步难行。 五子棋游戏规则: 1...
    99+
    2024-04-02
  • 基于jquery实现五子棋游戏
    本文实例为大家分享了jquery实现五子棋游戏的具体代码,供大家参考,具体内容如下 花了一天时间完成一个简单五子棋游戏(非人机) html: <!DOCTYPE html>...
    99+
    2024-04-02
  • Mysql基础(一)
    准备工作 开启服务器 ··windows系统:   方法1.搜索服务,找到mysql并开启.   方法2.如果安装的是5.7版本,cmd中输入: net start MySQL57 ··Mac系统:   系统偏好设置开启mys...
    99+
    2014-12-15
    Mysql基础(一)
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作