Mysql中创建存储和调用存储过程(一)

创建存储过程

DELIMITER $$ --定义分割符
DROP PROCEDURE IF EXISTS getRecord $$
CREATE PROCEDURE getRecord (
IN in_id INTEGER,  --定义输入参数
OUT out_name VARCHAR(20), --输出参数
OUT out_age  INTEGER) ---输出参数
BEGIN
   SELECT name, age
   INTO out_name, out_age
   FROM Student where id = in_id;
END $$
DELIMITER ;

调用存储过程:

--调用存储过程
mysql> call getRecord(10,@name,@age);
Query OK, 1 row affected (0.51 sec)

--查询输出参数

mysql> select @name,@age;
+-----------+------+
| @name     | @age |
+-----------+------+
| 张胜男    |   22 |
+-----------+------+
1 row in set (0.02 sec)

实例:

drop PROCEDURE IF EXISTS getResult;
create PROCEDURE getResult(
	in in_id INTEGER,
	out out_data VARCHAR(20)
)
BEGIN
	#DECLARE total INTEGER;
	DECLARE return_msg VARCHAR(30);
  SELECT * FROM login WHERE id=in_id;
  SELECT CONCAT('数据统计为:',count(1)) INTO out_data  FROM login WHERE id=in_id ;
	#SET return_msg = CONCAT('数据统计为:',total);
	#select return_msg into out_data;
END;

call getResult(1,@data);

select @data;

 

参考:

https://blog.csdn.net/lizzyshao/article/details/83585328 

https://blog.csdn.net/u012326462/article/details/83445404

 

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值