MySQL 存储过程 创建 查看 调用 删除

创建:

delimiter // 

create procedure my_add(IN a int, IN b int, OUT c int) 

 begin 

if a is null then set a = 0; 

end if; 

if b is null then  set b = 0; 

end if; 

set c = a + b; 

end;

//

delimiter ;


查看:

方法一:(直接查询,比较实用,查看当前自定义的存储过程)

select `specific_name` from mysql.proc where `db` = 'your_db_name' and `type` = 'procedure'

方法二:(查看数据库里所有存储过程+内容)

show procedure status;

方法三:(查看当前数据库里存储过程列表)

select specific_name from mysql.proc ;

方法四:(查看某一个存储过程的具体内容)

select body from mysql.proc where specific_name = 'your_proc_name';

查看存储过程或函数的创建代码 :

show create procedure your_proc_name;
show create function your_func_name;


调用:

mysql> set @a = 10;
Query OK, 0 rows affected (0.00 sec)


mysql> set @b = 20;
Query OK, 0 rows affected (0.00 sec)


mysql> set @c = 0;
Query OK, 0 rows affected (0.00 sec)


mysql>select @c;
+------+
| @c   |
+------+
|    0 |
+------+


mysql> call my_add(@a, @b, @c);
Query OK, 0 rows affected (0.00 sec)


mysql> select @a, @b, @c;
+------+------+------+
| @a   | @b   | @c   |
+------+------+------+
|   10 |   20 |   30 |
+------+------+------+
1 row in set (0.00 sec)


删除

drop procedure your_proc_name;


参考:http://www.111cn.net/database/mysql/35817.htm
http://blog.sina.com.cn/s/blog_594196850100laip.html

http://database.51cto.com/art/201006/203159.htm

http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值