MySQL 自定义和函数
- 如果函数体内有多语句需要额外的分割符,即使在Workbench里面编辑文档,也需要修改限定符。
- return 语句是必须的,声明函数的返回类型,函数体中也必须有return语句,当实际返回的数据和声明返回的类型不同时,会进行强制转换,比如声明返回int,实际返回enum或set类型时,会将其转化为对应的string形式。
drop function if exists insertfilmtype;
delimiter $
create function insertfilmtype(ftype text,fid int) returns int
begin
if(type not in (select * from filmtype)) then
insert into filmtype values(ftype);
end if;
insert into isfilmtype values(fid,ftype);
return 1;
end$