Dlaczego po prostu nie utworzysz wyzwalacza dla swojej sekwencji w ten sposób:
Sekwencja:
CREATE SEQUENCE LD_USER_ROLE_SEQ
INCREMENT BY 1 START WITH 1 NOMAXVALUE NOMINVALUE NOCYCLE NOCACHE NOORDER
Wyzwalacz:
CREATE TRIGGER LD_USER_ROLE_INSERT BEFORE INSERT ON LD_USER_ROLE
REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW
BEGIN
SELECT LD_USER_ROLE_SEQ.NEXTVAL INTO :NEW.USER_ROLE_ID FROM DUAL;
END;
Wyzwalacz automatycznie otrzyma następną wartość/identyfikator przy każdym wstawieniu (np. auto_increment w mysql).