FC ConcursosFC Concursos

Questão FC372985

Em um Oracle Database, um profissional de TI deseja criar uma trigger chamada Atualiza_salario_func, com o objetivo de exibir as diferenças entre o novo (NEW.salarioFunc) e o antig

Sistema de Gerenciamento de Banco de Dados (SGBD)

FCC · 2018

Em um Oracle Database, um profissional de TI deseja criar uma trigger chamada Atualiza_salario_func, com o objetivo de exibir as diferenças entre o novo (NEW.salarioFunc) e o antigo salário (OLD.salarioFunc) constantes da tabela de funcionários. Para tanto, ele escreveu o seguinte código:


CREATE TRIGGER Atualiza_salario_func
         BEFORE ..I.. ON ..II..
         FOR EACH ROW
   WHEN (NEW.CODFUNC > 0)
   DECLARE
            diferenca_salario number;
   BEGIN
           diferenca_salario := :NEW.salarioFunc - :OLD.salarioFunc;
           dbms_output.put('Salário antigo:' || :OLD.salarioFunc);
           dbms_output.put('Salário novo:' || :NEW.salarioFunc);
           dbms_output.put_line(' A diferença de salário foi de: ' || diferenca_salario);
END;
/


As lacunas I e II devem especificar, correta e respectivamente, os elementos genéricos

  1. condition e database_name.
  2. triggering_event e column_name.
  3. column_event e table_name.
  4. row_event e column_name.
  5. triggering_event e table_name.
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

A lacuna I deve ser preenchida pelo triggering_event, ou seja, a especificação do evento que acionará o gatilho (tempo e ação): por exemplo BEFORE ou AFTER combinados com INSERT, UPDATE ou DELETE. É essa parte que define quando e por qual operação a trigger será disparada.

A lacuna II corresponde ao table_name, o nome da tabela após a cláusula ON à qual o gatilho está associado (por exemplo ON FUNCIONARIOS).

Na prática, a declaração fica assim:
CREATE TRIGGER nome BEFORE UPDATE ON FUNCIONARIOS FOR EACH ROW ...

Dentro do corpo, a diferença salarial é calculada por \(diferenca := :NEW.salarioFunc - :OLD.salarioFunc\), usando os registros :NEW e :OLD disponíveis em triggers por linha.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo