mysql中procedure与function的区别
1.procedure必须显示声明参数为in、out、或inout;function不用声明,所有参数隐式为in
2.function必须用returns定义返回值类型
3.function用return来指定返回值
'create function 及其调用
delimiter//
create function querytmp()
returns int
begin
declare ecount int;
select count(*) into ecount from emp;
return (ecount);
end//
select querytmp()//
‘procedure及其调用
delimiter//
CREATE PROCEDURE proctmp(in param1 int,out param2 varchar(30))
begin
select name into param2 from emp where id=param1;
end
DELIMITER ;
call proctmp(3,@a);
select @a;