MySQL中怎么使用存储过程
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,MySQL中怎么使用存储过程,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。mysql存储过程存储过程(Stored Procedure)
千家信息网最后更新 2025年02月02日MySQL中怎么使用存储过程
MySQL中怎么使用存储过程,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
mysql存储过程
存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。目的是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。说白了就是数据库 SQL语言层面的代码封装与重用。创建的存储过程通常保存在数据库的数据字典中。
1.创建存储过程
create procedure 存储过程名(参数列表) begin 存储过程体(一组合法的sql语句) end
参数列表包含3个部分:
参数模式 参数名 参数类型。
举例:IN userid varchar(20)
参数模式有3个:
鸿蒙官方战略合作共建--HarmonyOS技术社区
in:传入接收
out:输出,作为返回值
inout:既可以作为输入,也可作为输出
begin ... end 使用:
如果存储过程体仅有一句话,begin end 可以不写
存储过程的每条sql语句结尾必须加分号结束
存储过程的结尾使用delimiter重新设置
delimiter $ ... $
2.调用存储过程语法
CALL 存储过程名(参数列表)
3.创建和调用案例解析
①.空参数列表
# 空参数存储过程案例 # 创建存储过程 DELIMITER $ #修改存储过程的结束标识符号 CREATE PROCEDURE myP1() BEGIN insert into demo01 (id,name,age,sex) values (10011,"jalen",27,1), (10021,"xiar",26,1), (10031,"heli",24,0), (10041,"weiwei",28,1); END $ DELIMITER ; #把结束标识改回去 # 调用存储过程 CALL myP1(); # 查看表结果 select * from demo01;
②.in模式参数的存储过程
输入单个参数的存储过程
# 2.1 in模式参数的存储过程,输入单个参数 # 创建存储过程 DELIMITER $ CREATE PROCEDURE myP2(IN InName varchar(20) ) BEGIN SELECT * from demo01 where name = InName; END $ DELIMITER ; #把结束标识改回去
# 调用存储过程 CALL myP2("jalen") ;
输入多个个参数的存储过程
# 2.2 in模式参数的存储过程,输入多个参数 # 创建存储过程 DELIMITER $ CREATE PROCEDURE myP3(IN InAge int ,IN InSex int ) BEGIN DECLARE res varchar(20) default ""; # 申明一个局部变量res SELECT name into res # 赋值 FROM demo01 WHERE age = InAge AND sex = InSex; SELECT res; #使用局部变量 END $ DELIMITER ;
# 调用存储过程 CALL myP3(27,1);
③.out模式参数的存储过程
# 3.out模式参数的存储过程 #创建存储过程 delimiter $ #修改存储过程的结束标识 CREATE PROCEDURE myP4(IN name varchar(20), out age int, out sex int) BEGIN select demo01.age,demo01.sex into age,sex from demo01 where demo01.name = name; END $ DELIMITER ;
#调用 CALL myP4("jalen",@age,@sex); select @age,@sex;
④.inout模式参数的存储过程
# 4.inout模式参数的存储过程 #创建存储过程 delimiter $ #修改存储过程的结束标识 CREATE PROCEDURE myP5(inout m int ,inout n int) BEGIN set m := m+10; set n := n+10; END $ DELIMITER ;#改回原有的结束标识分号
# 调用 set @a := 5,@b :=10; CALL myP5(@a,@b); select @a,@b;
4.删除存储过程
语法:drop procedure 存储过程名称
注意:一次只能删除一个存储过程
案例:drop procedure myP1;
5.查看存储过程的信息
show create procedure 存储名;
看完上述内容,你们掌握MySQL中怎么使用存储过程的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
存储
过程
参数
模式
数据
标识
数据库
输入
案例
语句
内容
分号
单个
变量
多个
局部
方法
更多
程序
语法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
项目日历数据库软件win10
性价比高的分布式数据库产品
海康流媒体服务器价格
环保app软件开发技术
服务器与台式机的区别
公司网络安全会
软件访问数据库很慢
泉州分布式服务器价格
荔枝网络技术有限公司电话
移植数据库用哪个命令
网络安全教育 英文
中新赛克业务软件开发部
电脑服务器名
德州微信小程序软件开发系统
威海众道生鲜软件开发
计算机和服务器端口有哪些
为啥服务器都是ddr3内存
大型餐厅点餐服务器价格
网络安全法42条规定
访问iis的数据库
现代网络技术作文
如何连接到google服务器
08数据库如何查看1433补丁
mysql数据库被删除怎么恢复
数据库成绩小于60
建站之星数据库连接
石嘴山软件开发专业
腾讯的数据库是腾讯自己的吗
紧张备货中的服务器
云服务器种类