;
;
;
;
Nos editores SQL, o ponto e vÃrgula costuma indicar a finalização do comando, e podemos digitar vários comandos pra executar depois todos em sequência.
Então seria impossÃvel digitar um comando pra criar a função acima.
o "console" do MySQL é um deles, e o HeidiSQL é outro.
Foi pra isso que inventaram o DELIMITER.
DELIMITER $$
;
;
;
;
;
$$
Na documentação do MySQL apenas mostra o DELIMITER, porque usa no console dele, mas não diz que isso NÃO faz parte do comando.
Acabei pensando que fazia parte do comando, ou que era obrigatório, e por isso não funcionava de jeito nenhum.
Vai executar pelo aplicativo: DELIMITER não existe
Vai digitar no HeidiSQL ou no console do MySQL? precisa o DELIMITER, pra avisar ao HeidiSQL ou ao console MySQL que tudo é um único comando.
Façam pra curiosidade: procurem no google sobre o uso/erros de DELIMITER.
Não vão encontrar nenhum post explicando o que estou colocando aqui.
Pelo contrário, eles vão dar a impressão de que sempre faz parte do comando.
Acho até que muita gente desistiu de criar STORED PROCEDURES/FUNCTIONS por causa disso.