mysql存储过程有哪些使用技巧
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,mysql存储过程有哪些使用技巧?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!mysql存储过程使用技巧有:1、创建
千家信息网最后更新 2025年02月02日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安全错误
数据库的锁怎样保障安全
如何投诉网络安全的平台
软件开发服务研发服务
数据库管理页面在哪
vps服务器 推荐
云检网络安全研究
如何设置用户拒绝接入服务器
软件开发不培训能去找工作吗
阿里云服务器ecs主机
我的世界服务器守卫塔
信丰租房网络安全
网络安全教案幼儿园小班
淘越网络技术是真的吗
软件开发谈判方案
网络安全责任领导
it开发软件开发
连接外部服务器一直连不上怎么办
外购名单数据库服务提供商
信息网络安全分级
网络安全主题怎么做
花雨庭服务器刷物
一直卡在发现服务器
迁西电子网络技术售后服务
企业it软件开发
德普软件开发上海公司
什么叫应用软件开发
人参与网络安全的言论
杭州学乐网络技术有限公司
确山县公安局网络安全宣传活动
计算机研究生去银行软件开发
分区表参数数据库