欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

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

时间:2021-07-28 07:42:52|栏目: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 输出参数; -- 在调用存储过程的时候可以 定义一个 @参数 来接收 输出参数 也就是 返回值

上一篇:详解腾讯云CentOS7.0使用yum安装mysql及使用遇到的问题

栏    目:Mysql

下一篇:Navicat中导入mysql大数据时出错解决方法

本文标题:详解MySql存储过程参数的入门使用

本文地址:http://www.codeinn.net/misctech/162132.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有