SQL语法错误:MySQL服务器返回时间戳确定性BEGIN

时间:2018-08-30 11:25:01

标签: mysql function mysql-function

我遇到以下错误:

  

1064-SQL语法; MySQL服务器返回时间戳确定性的BEGIN DECLARE   dt_act时间戳;在第1行选择

这是我的代码:

DROP FUNCTION IF EXISTS NewProc;
DELIMITER //
CREATE  FUNCTION NewProc(f_test varchar)
 RETURNS timestamp deterministic
BEGIN


DECLARE dt_act timestamp;
    select cast((case
when str_to_date(activation_date,'%d-%M-%Y') is not null then date_format(str_to_date(activation_date,'%d-%M-%Y'),'%Y-%m-%d') 
when str_to_date(activation_date,'%d-%m-%Y') is not null then date_format(str_to_date(activation_date,'%d-%m-%Y'),'%Y-%m-%d')
ELSE
date_format(str_to_date(activation_date,'%Y-%M-%d'),'%Y-%m-%d')
end) as timestamp ) into dt_act from abc where phone_no =f_test;

    RETURN dt_act;
END //

DELIMITER ;

错误:

  

1064-您的SQL语法有错误;检查手册    对应于您的MySQL服务器版本以使用正确的语法    接近')RETURNS时间戳确定性BEGIN DECLARE dt_act时间戳;在第1行选择

0 个答案:

没有答案