Some features:
1) Use the RETURNING clause:
INSERT INTO emp (empno, ename) VALUES (emp_seq.NEXTVAL, 'ANDREWS') RETURNING empno INTO :variable;
2) Use the CURRVAL sequence:
INSERT INTO emp (empno, ename) VALUES (emp_seq.NEXTVAL, 'ANDREWS'); SELECT emp_seq.CURRVAL INTO :variable FROM DUAL;
CURRVAL returns the last sequence value generated by your session.
Tony Andrews
source share