1
resposta

MINHA RESOLUÇÃO

Bom dia a todos,

Primeiramente criamos a função

CREATE OR REPLACE FUNCTION RETORNO_CATEGORIA 
(p_COD PRODUTO_EXERCICIO.COD%type)
RETURN PRODUTO_EXERCICIO.CATEGORIA%type
IS
    v_CATEGORIA PRODUTO_EXERCICIO.CATEGORIA%type;
BEGIN
    SELECT CATEGORIA INTO v_CATEGORIA FROM PRODUTO_EXERCICIO WHERE COD = p_COD;
    RETURN v_CATEGORIA;
END;

Depois consultamos os Selects coletivamente e individualmente e deu tudo certo.

SELECT RETORNO_CATEGORIA(COD) FROM PRODUTO_EXERCICIO; 
SELECT RETORNO_CATEGORIA(COD) FROM PRODUTO_EXERCICIO WHERE COD = '41232';

Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Oii Adriano, tudo bem?

Obrigada por compartilhar sua resolução no fórum, com certeza vai ajudar outros alunos que estejam nessa mesma atividade.

Sua função está bem estruturada: o uso de %type para tipar as variáveis com base nas colunas da tabela é uma boa prática que deixa o código mais robusto a mudanças no modelo. E os dois selects mostram bem a diferença entre consultar todos os registros e filtrar por um código específico.

Se quiser continuar avançando nos estudos de PL/SQL, o próximo passo natural é trabalhar com cursores e exceções:

Para se aprofundar

Conte com a Alura para evoluir seus estudos. Em caso de dúvidas, fico à disposição.

Bons estudos!

Sucesso

Imagem da comunidade