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

相关推荐
白云偷星子10 分钟前
MySQL笔记11
数据库·笔记·mysql
稚辉君.MCA_P8_Java1 小时前
WebSocket 是什么原理?为什么可以实现持久连接?
网络·数据库·websocket·网络协议
小光学长1 小时前
基于Vue的图书馆座位预约系统6emrqhc8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js
code小毛孩2 小时前
如何简单的并且又能大幅度降低任务队列的锁粒度、提高吞吐量?
java·jvm·数据库
风随心飞飞2 小时前
linux 环境下mysql 数据库自动备份和清库 通过crontab 创建定时任务实现mysql数据库备份
linux·数据库·mysql
奥尔特星云大使2 小时前
读写分离中间件简介
数据库·mysql·中间件·读写分离
友莘居士3 小时前
高效处理 Excel 海量数据入库:编程脚本、CSV 中间件、图形工具优化全攻略
数据库·中间件·excel·csv·海量数据·入库
Han.miracle4 小时前
数据库圣经第二章——简单的my.ini基础配置介绍
数据库
八怪4 小时前
KILL MTS的一个worker线程会怎么样
数据库
disanleya4 小时前
MySQL数据库安装后,如何设置自动化备份策略?
mysql