SINTAXE BEGIN MySQL ERROR

Alguém pode me ajudar? Estou cria do uma função com o uso do BEGIN, porém da erro de sintaxe.

Sua função retorna um valor mas não possuí tipo de retorno!

Exemplo:

delimiter |
CREATE FUNCTION dizerOi(nome CHAR(50)) RETURNS CHAR(50)
RETURN CONCAT('Oi, ',nome,'!');
|

Dscp mas n entendi, o tipo que coloquei foi o DECIMAL, quando coloco o tipo no retorno n acontece nada, a sintaxe apontada como errada está no comando BEGIN :confused: é ele que bão consigo fazer rodar.

se eu entendi direito o que você quis dizer basta acrescentar um parêntese que falta pra fechar os parâmetros informados!

CREATE FUNCTION aumenta_preco(preco DECIMAL(10,2), taxa DECIMAL(10,2) *)*

O Exemplo que te passei acima era algo como o exemplo abaixo, sem a necessidade de utilizar BEGIN, END:

delimiter |
CREATE FUNCTION aumenta_preco(preco DECIMAL(10,2), taxa DECIMAL(10,2)) RETURNS DECIMAL(10,2)`
RETURN preco + preco * taxa / 100;
|

entendi, mas queria utilizar o BEGIN e o AND, n sei pq ele n aceitou a sintaxe :confused:

Eu te dei a resposta do porque sua sintaxe não foi aceita, acredito que você não tenha lido direito!
Releia a minha resposta acima você vai perceber que eu indiquei onde está faltando um parêntese na sua função, marcado entre dois asteriscos, e logicamente também faltando o tipo de retorno da função, pois: (QUANDO SE USA O COMANDO RETURN, ISSO INDICA QUE A FUNÇÃO RETORNARÁ ALGUM VALOR, LOGO A MESMA DEVE POSSUIR UM TIPO DE RETORNO)!

Recomendo você dar uma boa lida em materiais na internet sobre os conceitos da estrutura de functions de forma geral e também dentro do MySQL, isso vai te ajudar a compreender melhor o que te disse a respeito do BEGIN/END e RETURN!

1 curtida

Obrigadooooo cara, sim vou dar uma lida, deu certo aqui, agora entendi o pq hsuhsasa, vou dar uma lida sim

vc indica algum material que você conhece ou algo?

O livro MySQL da casa do código eu recomendo, ótimo material!

Jonathan obrigado pela dicam você sabe de algum material para eu chegar no nível avançado?Não ficar só em consultas e em funções? Algo a mais como administrar um banco de dados mesmo, pq saber os comandos só não resolve pra ser um DBA né, precisa saber muito mais