1
resposta

Desafio Aula 1.8 Trigger

Para referência de quem possa precisar de ajuda com o desafio estou disponibilizando o meu código, que aparentemente está funcionando como o esperado:

/*Removendo o trigger anterior*/
DROP TRIGGER cria_log_instrutores ON instrutor;
DROP FUNCTION cria_instrutor;

/*Criação da Trigger Function*/

CREATE OR REPLACE FUNCTION cria_instrutor () RETURNS TRIGGER AS $$
    DECLARE
    maior_salario DECIMAL;
    BEGIN
        SELECT MAX (instrutor.salario) FROM instrutor INTO maior_salario;

        IF NEW.salario <= maior_salario THEN
            RETURN NEW;
        ELSE
            NEW.salario := maior_salario;
            RETURN NEW;
        END IF;
    END
$$ LANGUAGE plpgsql;

/*Criação do Trigger*/
CREATE TRIGGER cria_log_instrutores BEFORE INSERT ON instrutor
    FOR EACH ROW EXECUTE FUNCTION cria_instrutor();
1 resposta

Oi, Augusto!! Tudo bem?

Peço desculpas pela demora em retornar.

Parabéns pelo desenvolvimento do desafio, continue sempre se dedicando! Além disso, valeu por compartilhar sua solução com o fórum.

Em caso de dúvidas, fico à disposição.

Abraços!