Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

MINHA RESOLUÇAO

Bom dia a todos,

Esse foi fácil.

Apenas acrescentar o OUT junto ao IN para o parâmetro se tornar entrada e saída.

CREATE OR REPLACE PROCEDURE DUPLICA_VALOR
(p_VALOR IN OUT FLOAT)
IS
BEGIN
  p_VALOR := p_VALOR * 2;
END;
1 resposta

Oi, Adriano! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Na atividade de Oracle PL/SQL sobre Parâmetro IN OUT, você aplicou corretamente o conceito apresentado na aula. Sua procedure DUPLICA_VALOR demonstra como um parâmetro pode atuar simultaneamente como entrada e saída de dados. Além disso, a lógica utilizada ficou simples, organizada e fácil de manter, o que é uma ótima prática durante o desenvolvimento de procedures em PL/SQL. Outro ponto interessante é que você identificou rapidamente que bastava adicionar o modificador OUT ao parâmetro já existente, mostrando compreensão do funcionamento dos parâmetros em procedimentos armazenados.

Uma dica interessante para o futuro é utilizar o comando DBMS_OUTPUT.PUT_LINE para validar os resultados durante os testes. Veja este exemplo:


DECLARE
  v_valor FLOAT := 10;
BEGIN
  DUPLICA_VALOR(v_valor);
  DBMS_OUTPUT.PUT_LINE(v_valor);
END;

Nesse exemplo, o codigo cria uma variavel, executa a procedure e exibe o valor atualizado na saída. Essa prática ajuda bastante na depuracao e na verificacao do comportamento esperado durante o desenvolvimento de procedures PL/SQL.

Você pretende testar essa mesma lógica utilizando outros tipos de dados ou criando uma procedure com mais de um parâmetro IN OUT?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!