Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

obtendo erro de sintaxe na criação da função

  • Você precisa redefinir Delimiter para outra coisa (por exemplo:$$ ), em vez de (; ).
  • Também como medida de segurança, verifique se a função de mesmo nome já existe ou não (DROP FUNCTION IF EXISTS )
  • No final, redefina o DELIMITER para ;

Experimentar :
DELIMITER $$
DROP FUNCTION IF EXISTS `TitleToFileName`$$
CREATE FUNCTION TitleToFileName(title varchar(200)) RETURNS varchar(200)
  BEGIN
    set title = REPLACE(title,":"," ");
    set title=REPLACE(title,"/"," ");
    set title=REPLACE(title,"_"," ");
    RETURN title;
  END $$
DELIMITER ;