我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

MySQL存储过程详解及完整示例下载1.存储过程概念

1.存储过程( )是一组用于完成特定功能的SQL语句,经过编译后存储在数据库中。

2、存储过程是数据库中的一个重要对象,用户通过指定存储过程的名称并给出参数(如果存储过程有参数)来执行存储过程。

3、存储过程是通过流程控制和SQL语句编写的程序,该程序经过编译和优化后存储在数据库服务器中。

4. 存储过程可以由应用程序通过单个调用来执行,并允许用户声明变量。

5、同时存储过程可以接收和输出参数,返回执行存储过程的状态值,还可以嵌套。

2.存储过程的优点

1.增强了SQL语句的功能和灵活性

2.无需重复建立一系列处理步骤,确保数据完整性

3、减少网络流量。客户端只需要传递存储过程名和相关参数即可调用存储过程。相比于传输SQL语句,数据量自然要少很多。

4、增强了使用的安全性。通过存储过程,没有权限的用户也可以间接访问受控的数据库,从而保证了数据的安全。

5、可以实现集中控制,当规则发生变化时,只需要修改存储过程即可。

3.存储过程的缺点

1.调试不太方便。

2.您可能没有创建存储过程的权限。

3.重新编译问题。

4.可移植性问题。

变量

1、用户变量:以“@”开头,形式为“@变量名”。用户变量与MySQL客户端绑定,设置的变量只对当前用户使用的客户端有效。

2、全局变量:定义后以如下两种形式出现:set 变量名 或 set @@.变量名.show; 对所有客户端有效。只有超级权限的人才能设置全局变量。

3. 会话变量:只对连接的客户端有效,一旦客户端失去连接,该变量将失效。显示;

4.局部变量:作用域在begin和end语句块之间。

4.1 该块中设置的变量语句专门用于定义局部变量。 (8,2)[MySQL数据类型,如:int、float、date、()]9.95;

4.2 变量赋值:SET 变量名=表达式值[,=…],设置=1.2或2.3到@x中;

5.MySQL 存储过程

1.基本语法:过程名([过程参数[,…]])[特性…]过程体;先来看基本例子

第一个:

mysql 存储过程 事务 游标_事务存储过程_mysql存储过程游标

第二种:

mysql存储过程游标_mysql 存储过程 事务 游标_事务存储过程

注意:

1).这里要注意的是//和;;是分隔符,因为MySQL默认使用“;”作为分隔符。如果我们不声明分隔符,编译器会把存储过程当成SQL语句,存储过程的编译过程就会报错。所以必须提前用关键字声明当前段分隔符,这样MySQL才会把“;”当成存储过程中的代码。

2).存储过程根据需要可以有输入、输出、输入输出参数,这里有个输出参数s,是int类型,如果有多个参数,用“,”隔开。

3).流程主体的开始和结束分别用begin和emd来标记。

2.调用存储过程的基本语法:call()

3、参数:MySQL存储过程的参数是在存储过程定义时使用的,参数类型有IN、OUT、INOUT三种,格式如下:

([[in |out |inout ] 参数名称 数据类型 ...])

in 输入参数:表示调用存储过程时必须指定该参数的值,在存储过程中修改该参数的值时无法返回,为默认值

out 输出参数:该值可以在存储过程内部改变,并可以返回

inout输入输出参数:调用时指定,可改变并返回

3.1in参数示例:

mysql存储过程游标_mysql 存储过程 事务 游标_事务存储过程

3.2out参数创建示例

事务存储过程_mysql 存储过程 事务 游标_mysql存储过程游标

3. 参数创建示例

mysql 存储过程 事务 游标_mysql存储过程游标_事务存储过程

3.4 存储过程中的 IF 语句 (if then then else end if)

mysql存储过程游标_mysql 存储过程 事务 游标_事务存储过程

3.5 存储过程中的 case when

mysql存储过程游标_mysql 存储过程 事务 游标_事务存储过程

3.6 存储过程中的 While do ... end while 语句

mysql 存储过程 事务 游标_事务存储过程_mysql存储过程游标

3.7 存储过程中的 ...until end 语句

mysql 存储过程 事务 游标_事务存储过程_mysql存储过程游标

这个循环的作用和前面的WHILE循环一样,只不过它在执行完之后(直到i>=5)检查循环条件是否满足,而WHILE在执行之前进行检查(直到i

但是请注意,在 i>=5 之后不要添加分号。如果这样做,将提示语法错误。

3.8 存储过程中的 loop...end 循环语句

mysql 存储过程 事务 游标_事务存储过程_mysql存储过程游标

同样的循环控制语句,用LOOP写起来比用while和IF...END要复杂一些,在循环内部增加IF语句,在IF语句中添加LEAVE语句,LEAVE语句表示离开循环,LEAVE的格式为:LEAVE循环标签。

4.游标的使用:定义游标、打开游标、使用游标、关闭游标示例

mysql 存储过程 事务 游标_事务存储过程_mysql存储过程游标

mysql 存储过程 事务 游标_mysql存储过程游标_事务存储过程

5.MySQL存储过程的查询

5.1.查看某个数据库下的存储过程

来自 mysql.proc 的名称,其中 db='数据库名称';

或者

ma.where = '数据库名称';

或者

显示其中db ='数据库名称';

5.2.查看存储过程的详细信息

显示数据库.存储过程名称;

6.MySQL存储过程的修改

ALTER :更改操作员创建的预先指定的存储过程。它不会影响依赖的存储过程或存储函数。

7.删除存储过程

drop //注释函数名

来源:

二维码
扫一扫在手机端查看

本文链接:https://by928.com/5938.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线