数据库(MySQL)的存储过程

一、存储过程介绍

存储过程是事先经过编译并存储在数据库中的一段SQL 语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。 存储过程思想上很简单,就是数据库SQL 语言层面的代码封装与重用。

特点

  1. 封装,复用
  2. 可以接收参数,也可以返回数据
  3. 减少网络交互,效率提升

二、存储过程的基本语法

2.1 创建

复制代码
CREATE PROCEDURE 存储过程名称( [参数列表] ) 

BEGIN

	 SQL 语句 

END;

2.2 调用

CALL 名称 ( [参数])

2.3 查看

查询指定数据库的存储过程及状态信息

SELECT* FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA = '对应的数据库名称'

存储过程名称;--查询某个存储过程的定义

SHOW CREATE PROCEDURE 存储过程名称

2.4 删除

DROP PROCEDURE [ IFEXISTS ] 存储过程名称

三、存储过程中的变量

3.1 系统变量

注意:

如果没有指定SESSION/GLOBAL,默认是SESSION,会话变量。

mysql服务重新启动之后,所设置的全局参数会失效,要想不失效,可以在/etc/my.cnf 中配置。

3.2 用户自定义变量

3.3 局部变量

四、存储过程-if判断

五、存储过程-参数

相关推荐
找不到、了19 分钟前
MySQL 索引下推(ICP)的实战,彻底提升查询性能
数据库·mysql
b***676420 分钟前
Springboot3 Mybatis-plus 3.5.9
数据库·oracle·mybatis
kitty_hi21 分钟前
mysql主从配置升级,从mysql5.7升级到mysql8.4
linux·数据库·mysql·adb
q***13342 小时前
Linux系统离线部署MySQL详细教程(带每步骤图文教程)
linux·mysql·adb
王宪笙3 小时前
Qt之数据库使用示例
数据库·qt
q***42823 小时前
Redis 设置密码(配置文件、docker容器、命令行3种场景)
数据库·redis·docker
运维行者_4 小时前
网站出现 525 错误(SSL 握手失败)修复指南
服务器·网络·数据库·redis·网络协议·bootstrap·ssl
fruge4 小时前
openGauss数据库实操过程:从环境搭建到连接配置,第三方软件进行数据库管理
数据库·oracle
计算机毕业设计小途4 小时前
计算机毕业设计推荐:基于springboot的快递物流仓库管理系统【Java+spring boot+MySQL、Java项目、Java毕设、Java项目定制定
java·spring boot·mysql
5***79004 小时前
后端服务监控面板,关键业务指标
数据库