mysql里边,存储过程之间相互调用

比如我要在A的存储过程里边调用B存储过程的返回值,然后再进行处理,这个应该怎么写... 比如我要在A的存储过程里边调用B存储过程的返回值,然后再进行处理,这个应该怎么写 展开
 我来答
匿名用户
2013-04-09
展开全部
问题是这样,需要对mysql数据库中的一张表做备份操作,数据库在linux上,考虑用crontab对表定时备份,这张表是利用存储过程生成的,需要写一个shell脚本,调用mysql的这个存储过程,并且在shell中对生成的表做备份操作。
c6iz
推荐于2017-05-20 · TA获得超过1417个赞
知道大有可为答主
回答量:1426
采纳率:100%
帮助的人:1026万
展开全部
你创建一个存储过程C
先执行存储过程A,并得到返回值
再判断返回值执行存储过程B
例如:
mysql> \d //
mysql> create procedure test(v_name char(20),out v_id int)
-> BEGIN
-> SELECT id into v_id from t1 WHERE name=v_name;
-> END;
-> //

mysql> create procedure test1(v_id int,out v_name char(20))
-> BEGIN
-> SELECT name into v_name from t2 where id=v_id;
-> END;
-> //

mysql> create procedure test2(inout v_name char(20))
-> BEGIN
-> DECLARE v_id int;
-> CALL test(v_name,v_id);
-> CALL test1(v_id,v_name);
-> END;
-> //

mysql> set @aa='xx‘//
Query OK, 0 rows affected (0.00 sec)
mysql> call test2(@aa) //
Query OK, 0 rows affected (0.01 sec)
mysql> select @aa//
+------+
| @aa |
+------+
| x2 |
+------+
1 row in set (0.00 sec)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式