1、相同之处
- 定义上,存储过程和函数没有较大的区别,甚至他们有着一样的优点
2、不同之处
2.1、返回值
- 返回值不同
(1)存储过程:可以有0个或者多个返回值 存储过程详解: 文章链接
(2)函数:有且必须有一个返回值
2.2、语法和例子
- 语法
a、创建
create function 函数名(参数列表) returns 返回类型
begin
函数体
end
注意:(1)参数包含两部分:参数名 参数类型
(2)函数体:肯定会有return语句,没有就肯定会报错
b、调用
select 函数名(参数列表)//执行函数语句,并且返回值
- 例子:
(1)查找id为2的同学的所在班级号-------------------无参
(2)查找id为2的同学的所在班级号-------------------有参
2.3、函数查看和删除
- 查看
show create function 函数名 - 删除
drop function 函数名