您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
MySql中如何使用存储过程参数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
存储过程 in参数 的使用
IN参数只用来向过程传递信息,为默认值。
-- 存储过程中 in 参数的 使用 DELIMITER ;; CREATE PROCEDURE name_in(IN `time` VARCHAR(50)) BEGIN SELECT NOW() ,`time`; END ;; CALL name_in('现在时间'); -- in 是一个形参 你可以 定义 数据类型 调用存储过程的时候 可以给 实参 DELIMITER ;; CREATE PROCEDURE name_in_2(IN `time` VARCHAR(50)) -- set赋值的 使用 BEGIN SELECT NOW() ,`time`; END ;; SET @wo='现在时间'; CALL name_in_2(@wo); DELIMITER ;; CREATE PROCEDURE name_in_4(IN `time` VARCHAR(50))-- DECLARE 创建变量的使用 BEGIN DECLARE `time` DEFAULT 'wo'; -- DECLARE 创建变量的 只在begin-end语句块 有效的 变量 SELECT NOW() ,`time`;-- END ;; -- 可以 使用 DECLARE 在存储过程中 -- 创建(DECLARE)和 赋值(SET) set @变量名= 值 -- 总结 DECLARE 只在begin-end语句块 有效 set 加@ 是会话变量在 当前连接中 对连接的客户端 是有效的
out参数的使用
OUT参数只用来从过程传回信息。
MySQL存储过程"out"参数:从存储过程内部传值给调用者。
该参数初始值为 null,无论调用者是否给存储过程参数设置值。
DELIMITER ;; CREATE PROCEDURE name_out(IN `one` INT , IN two INT ,OUT shu INT) -- out 输出参数 的使用 BEGIN SET shu=`one`+two; -- 直接 两个输入参数 相加 赋值给 输出参数 set 变量名 是赋值的意思 -- set 赋值 在当前存储过程中 有效 比如 可以使用 select shu ; -- set @赋值 在当前连接客服端中有效 END ;; CALL name_out(3,3,@shuchu); SELECT @shuchu AS 输出参数; -- 在调用存储过程的时候可以 定义一个 @参数 来接收 输出参数 也就是 返回值
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。