mysql的存储过程

存储过程的概念

完成特定功能的sql语句的集合,把定义好的sql集合在一个特定的sql的函数当中,每次执行调用函数即可。还可以实现传参的调用。

存储过程的作用

1.执行速度比sql语句执行速度更快,执行效率更高。

2.客户端可以随时调用发放,也可以随后修改。

3.可以对数据库做任何操作

存储过程的语法

delimiter 表示开始和结束的语法 $$标志位,可以自定义,不要用汉字、数字、特殊字符做开头

格式:

delimiter $$

create procedure test1 ()

begin

select * from infol;

end $$

delimiter;

show procedure status where db='xy102'; 查询当前库的存储过程

show procedure status like '%test%'; 查询当前库的存储过程 (引号里面是存储过程的名称)

call test1; 执行存储过程

存储过程传参

in 传入参数,调用者向存储过程传入值

out 输出参数,存储过程向调用者传出值,可以是多个值

inout 输入输出,既可以表示存储过程向调用者传出值,也可以表示用户向存储过程传入值

in传入参数

备注:uname 自定义 传参CK=uname ,展示name=CK的行

out 输出参数

引用输出参数

练习

结果

输入和输出参数

传入

传出

结果

练习

结果输入185 输出是195

存储过程的控制语句

结果

练习

结果

declare 声明变量

a定义了10 所以输入多少都是110

相关推荐
刃神太酷啦2 分钟前
MySQL 库表操作 +数据类型+ 基础概念全梳理----《Hello MySQL!》(2)
java·c语言·数据库·c++·vscode·mysql·adb
GIS数据转换器1 小时前
无人机车载巡检系统
大数据·数据库·人工智能·数据挖掘·数据分析·无人机
AOwhisky9 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
小红卒9 小时前
mysql之udf提权
数据库·mysql·网络安全
Trouvaille ~10 小时前
【Redis篇】Redis 哨兵(Sentinel):高可用自动故障转移
数据库·redis·缓存·中间件·sentinel·高可用·哨兵
qfljg10 小时前
oracle 迁移到postgres
数据库·oracle
giaz14n9X10 小时前
Redis 分布式锁进阶第五十七篇
数据库·redis·分布式
剑神一笑11 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库
Maynor99611 小时前
Codex API 网关迁移与流量优化实战
数据库·oracle
WyCAGy8ij11 小时前
Redis 分布式锁进阶第二篇讲解
数据库·redis·分布式