Magna Concursos
913066 Ano: 2015
Disciplina: TI - Banco de Dados
Banca: COPS-UEL
Orgão: UEL

Considere as tabelas e as TRIGGERS escritas na notação do Oracle a seguir e responda à questão.

FUNCIONARIO

Nome

Cpf Salario Dnr

Cpf_Supervisor

DEPARTAMENTO

Dnome

Dnr Sal_total

Cpf_gerente

R1:

CREATE TRIGGER Sal_total1
AFTER INSERT ON FUNCIONARIO
FOR EACH ROW
WHEN (NEW.Dnr IS NOT NULL)
UPDATE DEPARTAMENTO
SET Sal_total = Sal_total + NEW.Salario
WHERE Dnr = NEW.Dnr;

R2:

CREATE TRIGGER Sal_total2
AFTER UPDATE OF Salario ON FUNCIONARIO
FOR EACH ROW
WHEN (NEW.Dnr IS NOT NULL)
UPDATE DEPARTAMENTO
SET Sal_total = Sal_total + NEW.Salario - OLD.Salario
WHERE Dnr = NEW.Dnr;

R3:
CREATE TRIGGER Sal_total3
AFTER UPDATE OF Dnr ON FUNCIONARIO
FOR EACH ROW
BEGIN
UPDATE DEPARTAMENTO
SET Sal_total = Sal_total + NEW.Salario
WHERE Dnr = New.Dnr;
UPDATE DEPARTAMENTO
SET Sal_total = Sal_total - OLD.Salario
WHERE Dnr = OLD.Dnr;
END;
R4:

CREATE TRIGGER Sal_total4
AFTER DELETE ON FUNCIONARIO
FOR EACH ROW
WHEN (OLD.Dnr IS NOT NULL)
UPDATE DEPARTAMENTO
SET Sal_total = Sal_total - OLD.Salario
WHERE Dnr = OLD.Dnr;

R5:
CREATE TRIGGER Informar_supervisor1
BEFORE INSERT OR UPDATE OF Salario,Cpf_supervisor
ON FUNCIONARIO
FOR EACH ROW
WHEN (NEW.Salario> (SELECT Salario FROM FUNCIONARIO)
WHERE Cpf = NEW.Cpf_supervisor))
informar_supervisor(NEW.Cpf_supervisor,NEW.Cpf);

Assinale a alternativa que apresenta, corretamente, a regra que será ativada quando um funcionário possuir um salário maior que seu supervisor.

 

Provas

Questão presente nas seguintes provas

Agente Universitário - TI/Desenvolvimento

40 Questões

Agente Universitário - TI/Suporte

40 Questões