当前位置:网站首页>Mysql 存储过程详解(procedure)
Mysql 存储过程详解(procedure)
2022-08-03 05:22:00 【鱼丸丶粗面】
1 概述
2 语法
2.1 创建
create procedure 存储过程名(in|out|inout 参数名 参数类型)
begin
-- 变量定义
declare v_int int default 0;
-- 变量赋值
set v_var = 1;
-- 具体逻辑
...;
end;
实例:
use test; -- 指定执行用户
drop procedure if exists procedure_demo; -- 若存在,先删除
delimiter $$ -- 指定分隔符,避免与逻辑代码中的 ";" 产生冲突
-- 创建存储过程
create procedure procedure_demo(in i_int int,
out o_varchar varchar(255))
begin
-- 变量定义
declare v_int int default 0;
declare v_numeric numeric(10, 2) default 13.14;
declare v_date date default '2021-05-10';
declare v_datetime datetime default '2021-05-10 21:03:00';
declare v_varchar varchar(255) default '存储过程模板';
-- 变量赋值
set v_int = i_int;
-- 逻辑代码
select v_int,
v_numeric,
v_date,
v_datetime,
v_varchar
from dual;
-- 输出,y: 执行成功
set o_varchar = 'Y';
end $$
delimiter ; -- 还原默认分隔符 ";"
2.2 调用
-- 有参数: 入参, 出参
call procedure_demo(2, @v_out);
select @v_out;
-- 无参数
call procedure_name();
2.3 查询
-- 方式1:查询常规情况
show procedure status where db='数据库名';
-- 方式2:查询常规情况
select *
from information_schema.routines r
where r.routine_schema='数据库名'
and r.routine_type = 'PROCEDURE';
-- 方式3:查询定义的部分 create ...
show create procedure 数据库.存储过程名;
2.4 删除
drop procedure if exists procedure_demo; -- 若存在,先删除
边栏推荐
猜你喜欢

嵌入式实验四

Leetcode刷题——一些用层次遍历解决的问题(111. 二叉树的最小深度、104. 二叉树的最大深度、226. 翻转二叉树、剑指 Offer 27. 二叉树的镜像)

BeanFactory和FactoryBean的区别

Execute the mysql script file in the docker mysql container and solve the garbled characters

Kettle 从资源库中载入新的转换出错(Invalid byte 1 of 1-byte UTF-8 sequence)

Flask,3-6

【DC-5靶场渗透】

陆运信息系统——班列项目总结(一)

用iPhone前摄3D人像建模,Meta:我看行

Qlik Sense 赋值详解(Set、Let)
随机推荐
详解背包问题(DP分支)
Let small program development into ` tailwind jit ` era
中国磷化铟晶圆行业发展前景与投资规划分析报告2022~2028年
Execute the mysql script file in the docker mysql container and solve the garbled characters
中国融资租赁行业市场投资分析与前景战略规划建议报告2022~2028年
【数组排序】+日常
Playing with Markdown(2) - Extraction and Manipulation of Abstract Syntax Trees
Apache2-XXE vulnerability penetration
MySQL 安装报错的解决方法
边缘辅助无人机网络的分层联邦学习
7.7(5)
MySQL 排序
经典论文-ResNet
嵌入式实验二注意点
【按位取反,逻辑操作符,条件操作符,逗号表达式,下标引用,函数调用,结构体】操作符后续+表达式求值(上)
Go (一) 基础部分2 -- if条件判断,for循环语句
7.16(6)
【 Nmap and Metasploit common commands 】
Sqli-labs-master靶场1-23关通关详细教程(基础篇)
【XSS,文件上传,文件包含】