Ok, acho que entendi o que está acontecendo. A resposta à sua pergunta é um enorme sim . Pode haver um grande impacto se você desabilitar esse gatilho.
A razão pela qual esse gatilho parece existir é lidar com a situação em que um valor de chave primária não fornecido em uma inserção em sua tabela. Se isso ocorrer em qualquer lugar em seu código, remover o gatilho quebrará essas inserções.
Você tem que fazer duas coisas.
-
Corrija o gatilho, obviamente está quebrado; consertá-lo:
CREATE OR REPLACE TRIGGER BI_PRIVILEGE before insert on PRIVILEGE for each row begin if :NEW.PRIVILEGE_ID is null then select PRIVILEGE_SEQ.nextval into :NEW.PRIVILEGE_ID from dual; end if; end;
Se você estiver usando o Oracle 11G ou superior, poderá usar isso:
if :NEW.PRIVILEGE_ID is null then :NEW.PRIVILEGE_ID := PRIVILEGE_SEQ.nextval; end if;
-
Descubra se isso realmente acontece. Se você inserir registros sem uma chave primária, precisará descobrir por que isso está acontecendo e se o comportamento está correto. Se for você está preso com o gatilho, caso contrário, conserte isso. Se você nunca inserir registros sem uma chave primária, poderá desabilitar o gatilho.
A maneira mais rápida de descobrir pode ser desabilitar o gatilho de qualquer maneira, mas isso quebraria suas inserções. Se este for um banco de dados de produção, somente você poderá dizer se vale a pena. Eu não faria pessoalmente.