上一节我们说了这个存储过程,这一节我们说一下这个存储函数,看清楚了啊,是函数!!!
存储函数
我们先来认识一下存储函数
很好啊,百科也不行了,我来说吧
这个存储函数和这个存储过程很类似,有那些类似的地方呢?不要急,下文我会去介绍这俩的区别的。
存储函数,说白了就是一个函数,好比我们Java中的一个类中的方法,有传入参数,有输出参数等等。
大概知道一下存储函数,我们接下来说说如何去使用。
存储函数的创建
存储过程的创建也和这个存储过程类似,但是用的关键字不一样,存储过程用的是 PROCEDURE ,存储函数是用的 FUNCTION,然后我给出创建存储函数的命令
CREATE FUNCTION 存储函数的名字(参数1, 参数2...)
RETURNS 数据类型
特性
执行的SQL...
执行的SQL...
RETURN xxx
嗯,就这么多,我们可以看到啊,这里多了一个这个 RETURNS 这么个关键词,这个是指返回值类型
再来说这个特性,这个特性和这个存储过程的特性一样哦,不知道的可以看我存储过程:胖子胖子大胖子_存储过程
除去这个RETURNS ,传入的参数也结构不一样了,没有存储过程的那个 IN、OUT、INOUT了,因为我们已经有RETURNS了,所以不需要这些东西了。
知道了创建的方法,我们来使用一下
是不是,一个很简单的存储函数就写好了,然后我们再来说说如何调用
存储函数的调用
这个存储函数的调用就和我们的存储过程的调用就不一样了,存储过程调用,我们使用的是关键字 CALL,而我们存储函数的调用是使用的 SELECT,然后后面跟上这个存储函数的名字,具体方法如下
SELECT 存储函数的名字(参数1, 参数2...);
很好啊,知道了以后,我们来调用一下这个存储函数
是不是很OK,同样也可以使用别名哦~
存储函数的删除
删除的话是真的和这个存储过程差不多,命令如下
DROP FUNCTION 存储函数的名字
就是把 PROCEDURE 换成了 FUNCTION 而已,我们使用一下
存储过程和存储函数的区别
最后我们来说说区别,算了,这个扔到下一讲。
大家好好练习一下,有问题可以直接加我QQ : 2100363119