MySQL函数获取语法错误

时间:2016-06-28 09:51:38

标签: mysql stored-procedures

我正在尝试在MySQL中创建以下函数但是会出现语法错误。 我无法找到解决方案,会感激一些帮助

CREATE FUNCTION `test`.`pro`(depart_id int) RETURNS varchar

BEGIN
     DECLARE title varchar;

if depart_id = 1 then 
   set title='IT Department';

else if depart_id = 2 then 
   set  title='HR Department';

else 
   set title='Admin';
end if;

return title;


END$$

DELIMITER ;

1 个答案:

答案 0 :(得分:2)

您的脚本中有几个语法错误:

  • varchar必须有
  • 您应首先定义DELIMITER $$
  • 不是else if,而是elseif

试试这个;)

DELIMITER $$

CREATE FUNCTION `test`.`pro`(depart_id int) RETURNS varchar(10)

BEGIN
     DECLARE title varchar(10);

if depart_id = 1 then 
   set title='IT Department';

elseif depart_id = 2 then 
   set  title='HR Department';

else 
   set title='Admin';
end if;

return title;

END $$

DELIMITER ;