mysql存储过程有哪些使用技巧
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,mysql存储过程有哪些使用技巧?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!mysql存储过程使用技巧有:1、创建
千家信息网最后更新 2026年11月03日mysql存储过程有哪些使用技巧
mysql存储过程有哪些使用技巧?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
mysql存储过程使用技巧有:1、创建带in模式参数的存储过程;2、创建out模式参数的存储过程;3、创建带inout模式参数的存储过程。
mysql存储过程使用技巧有:
定义
一组预先编译好的SQL语句的集合,理解成批处理语句,类似于java中的方法
1、提高代码的重用性
2、简化操作
3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率
创建语法
CREATE PROCEDURE 存储过程名(参数列表)BEGIN存储过程体(一组合法的SQL语句)END
参数列表包含三部分
参数模式 参数名 参数类型
举例:
in stuname varchar(20)
参数模式:
in:该参数可以作为输入,也就是该参数需要调用方传入值
out:该参数可以作为输出,也就是该参数可以作为返回值
inout:该参数既可以作为输入又可以作为输出,也就是该参数既需要传入值,又可以返回值
如果存储过程体仅仅只有一句话,begin end可以省略
存储过程体中的每条sql语句的结尾要求必须加分号。
存储过程的结尾可以使用 delimiter 重新设置
语法:
delimiter 结束标记
案例:
delimiter $
调用语法
CALL 存储过程名(实参列表);
空参列表
插入到admin表中五条记录
SELECT * FROM admin;DELIMITER $CREATE PROCEDURE myp1()BEGININSERT INTO admin(username,`password`) VALUES('john1','0000'),('lily','0000'),('rose','0000'),('jack','0000'),('tom','0000');END $#调用CALL myp1()$创建带in模式参数的存储过程
创建存储过程实现 根据女神名,查询对应的男神信息CREATE PROCEDURE myp2(IN beautyName VARCHAR(20))BEGINSELECT bo.*FROM boys boRIGHT JOIN beauty b ON bo.id = b.boyfriend_idWHERE b.name=beautyName;END $#调用CALL myp2('柳岩')$创建存储过程实现,用户是否登录成功
CREATE PROCEDURE myp4(IN username VARCHAR(20),IN PASSWORD VARCHAR(20))BEGINDECLARE result INT DEFAULT 0;#声明并初始化SELECT COUNT(*) INTO result#赋值FROM adminWHERE admin.username = usernameAND admin.password = PASSWORD;SELECT IF(result>0,'成功','失败');#使用END $#调用CALL myp3('张飞','8888')$创建out 模式参数的存储过程
根据输入的女神名,返回对应的男神名
CREATE PROCEDURE myp6(IN beautyName VARCHAR(20),OUT boyName VARCHAR(20))BEGINSELECT bo.boyname INTO boynameFROM boys boRIGHT JOINbeauty b ON b.boyfriend_id = bo.idWHERE b.name=beautyName ;END $
根据输入的女神名,返回对应的男神名和魅力值
CREATE PROCEDURE myp7(IN beautyName VARCHAR(20),OUT boyName VARCHAR(20),OUT usercp INT) BEGINSELECT boys.boyname ,boys.usercp INTO boyname,usercpFROM boys RIGHT JOINbeauty b ON b.boyfriend_id = boys.idWHERE b.name=beautyName ;END $#调用CALL myp7('小昭',@name,@cp)$SELECT @name,@cp$创建带inout模式参数的存储过程
传入a和b两个值,最终a和b都翻倍并返回
CREATE PROCEDURE myp8(INOUT a INT ,INOUT b INT)BEGINSET a=a*2;SET b=b*2;END $#调用SET @m=10$SET @n=20$CALL myp8(@m,@n)$SELECT @m,@n$
删除存储过程
drop procedure 存储过程名DROP PROCEDURE p1;DROP PROCEDURE p2,p3;#×
查看存储过程的信息
DESC myp2;SHOW CREATE PROCEDURE myp2;
感谢各位的阅读!看完上述内容,你们对mysql存储过程有哪些使用技巧大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。
过程
存储
参数
模式
使用技巧
技巧
内容
语句
输入
也就是
女神
语法
成功
信息
文章
次数
问题
神名
编译
输出
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司简介
互联网中国科技
互联网科技未来
互联网公司 科技公司
互联网科技股票
杭州互联网科技公司
九亚互联网科技
天津摩尔互联网科技
易通互联网络科技有限公司
沃里互联网科技
友谊互联网络科技
山东吉时兔互联网科技有限公司
西藏七维空间互联网科技有限公司
科技与互联网哪个更好
厦门千工互联网科技有限公司
翼展科技 首家互联网医院
科技大学互联网
张家口科技产业互联网平台
保山互联网科技靠谱吗
互联网金融金融科技
互联网科技公司有哪些
互联网科技宣传片
欧洲十大科技互联网公司
常德市电业局互联网科技部
世界互联网科技公司市值排名
众安科技工业互联网合作
小米互联网科技园入驻
云鲸互联网络科技有限公司
互联网科技收购价值
10位科技互联网大佬