Quantcast
Channel: Oracle, MySQL, Sybase, Informix and other databases
Viewing all articles
Browse latest Browse all 1350

Oracle 10G get newly inserted row sequence value for inside trigger

$
0
0

I am creating an audit log on several tables and I was wondering if it is possible to get the primary key/sequence.nextval of an newly inserted row from inside a trigger.

CREATE or REPLACE TRIGGER PAT_ORDERS$TRIGGER
AFTER INSERT OR UPDATE OR DELETE ON ACCOUNT
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
v_transaction_id number(20);
BEGIN
SELECT NVL(MAX(TRANSACTION_ID), 0) + 1
INTO v_transaction_id
FROM ORDERS_AUDIT_LOG;

/* -- IF For Inserting -- */
IF INSERTING THEN
INSERT INTO ORDERS_AUDIT_LOG
(log_id, transaction_id, transaction_date, table_name,
table_pk_value, column_name, previous_value, changed_value,
change_by,action)
VALUES
((SELECT NVL(MAX(LOG_ID), 0) + 1 FROM ORDERS_AUDIT_LOG),
v_transaction_id, SYSDATE, 'ACCOUNT',
:NEW.ID, -- Will this work?????
'ACCT_NAME', :OLD.ACCT_NAME, :NEW.ACCT_NAME,
:NEW.LAST_MODIFIED_USER,'INSERT');

 


Viewing all articles
Browse latest Browse all 1350

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>