I am a newcomer in ORACLE SQL, I am trying to create a trigger to generate auto_incement serial number as a primary key in my table but no idea what mistake I am making, due to which I am getting :
error while performing partial saving of event: error code=4098 ST= java.sql.BatchUpdateException: ORA-04098: trigger 'TNTCA.STAGING_TRIGGER_ERROR_REASON' is invalid and failed re-validation\n, caused by : \"ORA-04098: trigger 'TNTCA.STAGING_TRIGGER_ERROR_REASON' is invalid and failed re-validation\n\"
My SQL Statement is :
create global temporary table STAGING_ERROR_REASON (   STAGING_REASON_ID number(4) constraint STAGING_REASON_ID not null   ,REASON nvarchar2(1024) not null   ,constraint PK_STAGING_REASON_ID PRIMARY KEY(STAGING_REASON_ID) );
create sequence STAGING_SEQ_ERROR_REASON start with 1 increment by 1 minvalue 1 maxvalue 10000;
CREATE OR REPLACE TRIGGER "STAGING_TRIGGER_ERROR_REASON" 
   BEFORE INSERT ON STAGING_ERROR_REASON 
   REFERENCING NEW AS NEW 
   FOR EACH ROW 
BEGIN   
   if(:NEW.STAGING_REASON_ID is null) then   
      SELECT STAGING_SEQ_ERROR_REASON.NEXTVAL   
          INTO :NEW.STAGING_REASON_ID 
   END;
ALTER TRIGGER "STAGING_TRIGGER_ERROR_REASON" ENABLE;
 
     
    