Nos meus esquemas de relação abaixo:
FUNCIONARIO(CPF, PNOME, SNOME, CPF_GERENTE, DEPARTAMENTO, SALARIO)
DEPARTAMENTO(NOME_DEPARTAMENTO, NUMERO_FUNCIONARIOS)
HISTORICO(CPF, DATA_CONTRATACAO, DATA_DESLIGAMENTO, ULTIMA_MODIFICACAO)
GERENTE(CPF_GERENTE, NOME_DEPARTAMENTO, SALARIO)
Eu quero criar uma trigger que seja disparada na inserção de um novo funcionario. Caso o salário em FUNCIONARIO seja maior que o salário de seu respectivo gerente, a inserção seja negada. A ligação entre as tabelas FUCIONARIO e GERENTE é CPF_GERENTE.
create or replace trigger tri_fun_insert before insert on FUNCIONARIO
begin
if :new.salario >= ...
end;
Como posso fazer? Eu NÃO posso colocar em “…” um select do tipo “select salario from gerente where cpf_gerente = :new.cpf_gerente”, pois gera erro.