mysql创建存储过程

网友投稿 600 2022-11-19

mysql创建存储过程

mysql创建存储过程

今天是2017年9月8日,距离国庆还有1,2,3,4,...还有还些天呢,进入工作之后有的时候感觉对学习有了一个全新的认识,以前认为学习就是记住,现在才知道学习其实仅仅是知道就可以,知道有这一块就行了,大概会用就可以了。好了不谈这些无用的东西了,我们来一起看看存储过程。

存储过程是一些sql语句的集合,比如有的时候我们可能需要一大串的sql语句,或者说在编写SQL语句的过程中还需要设置一些变量的值,这个时候我们就完全有必要编写一个存储过程。

那么如何创建一个存储过程:

drop procedure if EXISTS pr_sub;create PROCEDURE pr_sub( x int, y int)begin declare s int; if x is null THEN set x=10;end if;if y is null THEN set y=20;end if; set s=y-x; SELECT s as subofyx;ENDset @a=10;set @b=20;call pr_sub(@b,@a);

上面是一个存储过程活生生的例子,虽然说有点简单,但是也不妨碍我们对存储过程语法的研究。

create procedure procedure_name

(

[in|out] param1 param_type,

[in|out] param2 param_type

)

begin

sql statements;

end;

接下来我们来看看另外的一个活生生的例子,这个我们来看一下带有输出参数的out,,,,来来来大家快来看啊:

drop procedure if exists pr_multi;create PROCEDURE pr_multi( out c int, a int, b int)beginif a is null THEN set a=10;end if;if b IS null THEN set b=20;end if;set c=a*b;ENDcall pr_multi(@name,5,3);select @name

我们看调用存储使用的关键字是call procedure_name(param,..)猜猜最后输出是多少:

@name

15

猜中没有,没有的话就给自己一个耳光吧。。。。。开玩笑,别当真

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何实现线程的同步
下一篇:mysql 函数 判断一个字符串里面包含几个其他的字符
相关文章

 发表评论

暂时没有评论,来抢沙发吧~