MySQL中怎么使用存储过程
发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,MySQL中怎么使用存储过程,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。mysql存储过程存储过程(Stored Procedure)
千家信息网最后更新 2024年11月25日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安全错误
数据库的锁怎样保障安全
数据库的表自增字段
服务器 不间断电源
软件开发与测试怎么学
计算机网络安全设计原则
服务器设施不显示了怎么办
网络安全宣传周拍了拍你
医学网络技术大专
建城市建哪些需要软件开发
湖北宜昌的服务器云空间
做网络安全局这些年
安卓发信息通过服务器吗
镇江erp软件开发
tp网卡服务器
我的世界服务器bc
建筑师的服务器
数据库连接满会出现什么情况
惠山区加工软件开发价格实惠
服务器端口怎么设置
互联网科技公司的年终总结
数据库批量插入信息
棋牌服务器多少钱
网络安全手抄报顺口溜内容
应用软件开发建立两个类
海岛升级数据库
国信安网络安全培训怎么样
数据库中历史最悠久的是
私人数据库的用途
税务软件开发工资
delphi7 数据库
一台操作系统安装多套数据库