Hi All,
I am using
Connected to Oracle Database 11g Express Edition Release 11.2.0.2.0
I am using Oracle HR schema
I am trying to learn triggers
Below is my table script.
CREATE TABLE FOO(
ID NUMBER PRIMARY KEY,
DATA VARCHAR2(100));
CREATE SEQUENCE FOO_SEQ
CREATE OR REPLACE TRIGGER BIFER_FOO_ID_PK
BEFORE INSERT
ON FOO
FOR EACH ROW
BEGIN
SELECT FOO_SEQ.NEXTVAL
INTO :NEW.ID
FROM DUAL;
END;
INSERT INTO FOO (DATA) VALUES('CHRISTOMER');
INSERT INTO FOO(ID,DATA) VALUES(5,'SEAN')
SQL> SELECT * FROM FOO ;
ID DATA
---------- --------------------------------------------------------------------------------
1 CHRISTOMER
2 SEAN
I want to understand this behaviour,
the sequence will automaticaly insert into FOO, if we don't give the ID column,
But giving the ID column also, it inserts by sequence.
Please help me understand the behaviour
Thanks,