iis服务器助手广告
返回顶部
首页 > 资讯 > 数据库 >如何理解MySQL的存储过程与光标
  • 762
分享到

如何理解MySQL的存储过程与光标

2024-04-02 19:04:59 762人浏览 薄情痞子
摘要

今天就跟大家聊聊有关如何理解Mysql的存储过程与光标,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。mysql的存储过程与光标一、存储过程T-sql

今天就跟大家聊聊有关如何理解Mysql的存储过程与光标,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

mysql的存储过程与光标

一、存储过程
T-sql 编程
增 删 改 查 —》语句
MySQL是一门真正语言 T-sql 类似于函数 function

1.存储过程:
创建格式:
create procedure 过程名称(参数1,参数2,…….)
begin
  sql代码
end
begin…and 就相当于以前{ 代码段 }
预编译,执行一次(编译),后边在使用直接调用编译结果 ,速度快

create procedure spade()
begin
select * from books;
end
//

mysql默认情况下遇到; 就执行了, ; 执行符号
在存储过程运行的时候delimiter符号修改执行符号

存储过程的调用:
call 过程名() //执行一次 (编译)

2、存储过程中的参数:
in 传入参数 把值传进去
out 传出参数 返回值
inout 传入传出参数 效率低下

in 输id是几查找第几条记录
create procedure one (in id int)
begin
select * from books where booksId=id;
end
//
call one(3);//

out 参数一个返回值
create procedure two (out spade int)
begin
select count(*) into spade from books;
end
//
注意:在sql 语句中赋值 into

在mysql 过程外边的变量 需要 @a
call thr(@a)//
select @a //查看变量
注意:
mysql中变量
过程外 @变量名称
过程内:声明
declare 变量名称 数据类型;

查找网站类型的图书
查找到类型的id
根据类型的id 在到图书表中 查找到对应的图书
create procedure toto()
begin
declare btid int;
set btid=(select cid from cateGory where cName=”大事记”);
select * from category where cid=btid;
end
//

3、条件和处理程序
在某些条件下 执行某些程序
declare handler_type handler for conditionValue sq_statement

handler_type 操作类型
continue 继续
exit 退出
undo 忽略
conditionValue sql 错误的编号
02000 不正确的FETCH变量数目
23000 磁盘满了
sq_statement 执行对应的操作

declare continue handler for sqlstate “02000” set done=1;
当出现02000错误时候, 设置 done=1 后边程序继续执行

二、光标 抓取数据的
1、声明光标
declare 光标名称 cursor for sql语句 (select)

2、打开光标
open 光标名称

3、从光标中抓取数据
fetch 光表名称 into

4、关闭光标
close 光标名称
//抓取 btype中的数据
create procedure sex()
begin
declare id int;
declare name varchar(30);
declare done int default 0;
declare spade cursor for select * from books;
declare continue handler for sqlstate’02000’set done=1;
open spade;
repeat
fetch spade into id,name;
select id;
until done
end repeat;
close spade;
end
//
until false //终止条件不满足
until true 终止条件满足

补充:
if 条件 then
执行语句
else if 条件 then
执行语句
else if 条件 then
执行语句

else 以上条件都不满足
end if

mysql存储过程一般用来提高sql运行效率
PHP调用存储过程
create procedure getDate()
begin
select * from btype;
end

删除存储过程
drop procedure 过程名;

查看存储过程
show create procedure 过程名;

看完上述内容,你们对如何理解MySQL的存储过程与光标有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网数据库频道,感谢大家的支持。

您可能感兴趣的文档:

--结束END--

本文标题: 如何理解MySQL的存储过程与光标

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何理解MySQL的存储过程与光标
    今天就跟大家聊聊有关如何理解MySQL的存储过程与光标,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。MySQL的存储过程与光标一、存储过程T-sql...
    99+
    2024-04-02
  • mysql数据库存储过程之游标(光标cursor)
    游标是用来存储查询结果集的数据类型,在存储过程和函数中可以使用游标对结果集进行循环的处理。游标的使用包括游标的声明、open、fetch和close。 一、语法。 #声明游标declare 游标名称 cursor for 查询语句;#开启游...
    99+
    2023-09-02
    数据库 sql
  • MySQL存储过程详解 mysql 存储过程
    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Proce...
    99+
    2024-04-02
  • MySQL的存储函数与存储过程的区别解析
    MySQL存储函数(自定义函数),函数一般用于计算和返回一个值,可以将经常需要使用的计算或功能写成一个函数。 存储函数和存储过程一样,都是在数据库中定义一些 SQL 语句的集合。 存...
    99+
    2024-04-02
  • MySQL存储过程怎么理解
    MySQL存储过程是一段预先编译好的SQL代码块,可以被多次调用和执行。它可以接受参数、执行SQL语句、执行控制流程和返回结果。存储过程的主要目的是将一系列的SQL操作组合在一起,并在数据库服务器上进行执行。这样可以提高数据库的性能,减...
    99+
    2023-08-11
    MySQL
  • MYsql-存储过程-游标的嵌套
    在ITPUB: http://www.itpub.net/viewthread.phptid=1134085&pid=13049789&page=1&extra=#pid13049789上有人发贴说游标不...
    99+
    2024-04-02
  • 如何在mysql存储过程中使用游标
    本篇文章给大家分享的是有关如何在mysql存储过程中使用游标,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在处理存储过程中的结果集时,可以使用...
    99+
    2024-04-02
  • 关于MySQL的存储过程与存储函数
    目录初识存储过程存储过程语法存储过程调用存储函数的使用语法函数的调用对比存储函数和存储过程初识存储过程 理解:含义: 存储过程(Stored Procedure)是在大型数据库系统中...
    99+
    2023-05-19
    MySQL存储过程 MySQL存储函数
  • mysql:存储过程-游标遍历
    前情提要 因工作需要要写一些sql脚本,进行一些数据的修改。 直接在数据库ide中写sql涉及就到一些逻辑的判断。 比如判断根据参数判断这条数据存不存在,不存在插入,存在则删除。 最开始查搜索引擎mysql是支持if判断的,根据格式写完...
    99+
    2023-09-27
    java 后端 mysql sql
  • MySQL存储过程的创建、调用与管理详解
    目录存储过程简介为什么要用存储过程?存储过程的优点存储过程的缺点 MySQL 中的存储过程创建与调用过程存储过程语法解析存储过程的参数变量变量赋值流程控制语句if 条件语句case ...
    99+
    2024-04-02
  • mysql存储过程异常如何解决
    这篇文章主要介绍“mysql存储过程异常如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql存储过程异常如何解决”文章能帮助大家解决问题。 ...
    99+
    2023-05-25
    mysql
  • mysql 存储过程详解
    前言 在项目开发中,经常会遇到这样一种场景,当修改A表的一条数据时,需要关联修改B表、C表甚至其他更多表的数据,为什么会这样呢? 在真实的业务场景中,往往一张表的数据关联的业务是多样的,举例来说,用户在页面上完成一个订单,对服务端来说,与这...
    99+
    2023-08-17
    mysql 存储过程详解 mysql 存储过程使用 mysql 存储过程
  • MySQL-存储过程、流程控制、游标
    存储过程 存储过程概述 1.产生背景 开发过程总,经常会遇到重复使用某一功能的情况 2.解决办法 MySQL引人了存储过程(Stored Procedure)这一技术 3.存储过程 存储过程就是一条或...
    99+
    2023-10-11
    sql
  • MySQL如何执行存储过程
    MySQL执行存储过程的步骤如下: 创建存储过程:首先需要使用CREATE PROCEDURE语句创建存储过程,并定义参数、执行逻...
    99+
    2024-03-06
    MySQL
  • mysql如何删除存储过程
    这篇文章将为大家详细讲解有关mysql如何删除存储过程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。说明mysql中,使用DROP语句删除存储过程。存储过程内容的修改方法是通过删除原有存储过程,之后再以相...
    99+
    2023-06-20
  • mysql如何调用存储过程
    在MySQL中调用存储过程可以使用CALL语句。语法如下:```CALL procedure_name([parameter1, parameter2, ...]);```其中,procedure_name是存储过程的名称,parame...
    99+
    2023-08-11
    mysql
  • 如何退出MySQL存储过程?
    我们可以借助 LEAVE 命令退出 MySQL 存储过程。 以下是语法。 Leave yourLabelName; 下面是一个例子。在这里,我们正在创建一个新过程。 mysql> delimiter // mysql> CREATE ...
    99+
    2023-10-22
  • mysql如何创建存储过程
    小编给大家分享一下mysql如何创建存储过程,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.创建存储过程p3 (先更改结束符 ...
    99+
    2024-04-02
  • MyBatis如何调用存储过程与存储函数
    目录1、MyBatis调用存储过程2、MyBatis调用存储函数1、MyBatis调用存储过程 MyBatis支持使用存储过程的配置。当使用存储过程时,需要设置一个参数“mode”,...
    99+
    2024-04-02
  • 如何处理MySQL存储过程的权限问题
    这篇文章主要介绍如何处理MySQL存储过程的权限问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! MySQL的存储过程,没错,看起来好生僻的使...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作