详解MySql存储过程参数的入门使用

存储过程 in参数 的使用 IN参数只用来向过程传递信息,为默认值。 — 存储过程中 in 参数的 使用DELIMITER ;; CREATE PROCEDURE name_in(IN `time` VARCHAR(50)) BEGIN SELECT NOW() ,`time`; END ;;CALL name_in(‘现在

存储过程 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 输出参数; — 在调用存储过程的时候可以 定义一个 @参数 来接收 输出参数 也就是 返回值

以上所述是小编给大家介绍的MySql存储过程参数的入门使用详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对每日运维网站的支持!

上一篇 windows 64位下MySQL 8.0.15安装教程图文详解
下一篇 在windows上安装不同(两个)版本的Mysql数据库的教程