1
resposta

[Sugestão] SP_Acha_Sabor_Produto

Gostaria de Compartilhar a minha forma de resolução da store procedure:

BEGIN

  DECLARE mensagem VARCHAR(50);
  DECLARE vSabor VARCHAR(50);
  SELECT SABOR INTO vSabor FROM tabela_de_produtos2 WHERE codigo_do_produto = vProduto;
  IF(vSabor is NULL) THEN
   SET mensagem = 'Produto não Registrado!';
  ELSE
   SET mensagem = concat('Sabor Identificado : ',vSabor);
  END IF;
  SELECT mensagem;

END
1 resposta

Oi, Pedro! Tudo bem?

Mandou muito bem no desenvolvimento da stored procedure!

O único ponto de atenção é sobre a sua declaração. Para que possamos usá-la em nossas atividades, é sempre necessário escrever, na primeira linha de criação, o comando CREATE PROCEDURE para de fato criar a stored procedure. Nesse contexto, teríamos algo assim:

CREATE PROCEDURE `acha_sabor_produto`(vProduto VARCHAR(50))

Além de CREATE PROCEDURE, tivemos que indicar o nome da stored procedure, bem como o seu parâmetro, que é a variável vProduto, a qual armazenará o código do produto que desejamos verificar o sabor.

Com essa edição, chegamos no seguinte script:

CREATE PROCEDURE `acha_sabor_produto`(vProduto VARCHAR(50))
BEGIN

  DECLARE mensagem VARCHAR(50);
  DECLARE vSabor VARCHAR(50);
  SELECT SABOR INTO vSabor FROM tabela_de_produtos2 WHERE codigo_do_produto = vProduto;
  IF(vSabor is NULL) THEN
   SET mensagem = 'Produto não Registrado!';
  ELSE
   SET mensagem = concat('Sabor Identificado : ',vSabor);
  END IF;
  SELECT mensagem;

END

Para finalizar, podemos utilizar acha_sabor_produto, como mostra o exemplo abaixo:

CALL acha_sabor_produto('1000889');

E o resultado é "UVA"!

Continue sempre se dedicando nos estudos, Pedro, fico à disposição para ajudar em caso de dúvidas.

Um forte abraço!