MySQL复习资料(七)——MySQL-存储过程
📋导读📋
💝博客主页:
💝✍本文由在下【红目香薰】原创,首发于CSDN✍
🤗2022年最大愿望:【服务百万技术人】🤗
📋前言📋
本文属于系列文章,分别为:
MySQL复习资料(一)——MySQL环境安装
MySQL复习资料(二)——MySQL-DDL语句
MySQL复习资料(三)——MySQL-DML语句
MySQL复习资料(四)——MySQL-聚合函数
MySQL复习资料(五)——MySQL-索引
MySQL复习资料(六)——MySQL-多表联合查询
MySQL复习资料(七)——MySQL-存储过程
MySQL复习资料(八)——MySQL-事务
MySQL复习资料(九)——MySQL-图形化工具使用
📋正文📋
MySQL复习资料(七)——MySQL-存储过程
目录
存储过程的概念
存储过程是数据中的一个重要的对象,它是在大型数据库系统中一组为了完成特定功能的SQL语句集,在第一次使用经过编译后,再次调用就不需要重复编译,因此执行效率比较高。它与函数在数据库中的异同点如下:
(1)存储过程与函数的相同点在于,它们的目的都是为了可重复地执行数据库SQL语 句的集合,并且都是经过一次编译后,后面再次需要时直接执行即可;
(2)存储过程与函数的不相同点有4个,具体如下:
语法中实现的标识符不同,存储过程使用PROCEDURE,函数为FUNCTION。
存储过程在创建时没有返回值,而函数在定义时必须设置返回值。
存储过程没有返回值类型,且不能将结果直接赋值给变量;而函数定义时需要设置返回值类型,且在调用时必须将返回值赋给变量。
存储过程须通过CALL进行调用,不能使用SELECT调用;而函数则可在SELECT语句中使用
存储过程的创建与执行
存储过程在创建时与创建函数相同,首先都需要临时修改语句结束符号。然后再利用CREATE语句进行创建,其基本语法格式如下:
在上述语法中,创建存储过程的关键字为PROCEDURE,在为存储过程设置参数时,在参数名前还可以指定参数的来源及用途,可选值分别为IN(默认值)、OUT和INOUT。
IN、OUT、INOUT三者的区别如下所示: IN:表示输入参数,即参数是在调用存储过程时传入到存储过程里面使用,传入的数据可以是直接数据(如5),也可以是保存数据的变量。 OUT:表示输出参数,初始值为NULL,它是将存储过程中的值保存到OUT指定的参数中,返回给调用者。 INOUT:表示输入输出参数,即参数在调用时传入到存储过程,同时在存储过程中操作之后,又可将数据返回为调用者。
创建存储过程示例
使用存储过程
可以通过索引的对照实验看看存储过程具体怎么应用,链接地址如下:
- 点赞
- 收藏
- 关注作者
评论(0)