Skapa tabellen och sekvensen
SQL> create table staff (
2 emp_id number primary key,
3 staff_name varchar2(100)
4 );
Table created.
SQL> create sequence emp_id_seq;
Sequence created.
Nu kan du skapa en utlösare som använder sekvensen för att fylla i primärnyckeln
SQL> create trigger trg_emp_id
2 before insert on staff
3 for each row
4 begin
5 select emp_id_seq.nextval
6 into :new.emp_id
7 from dual;
8 end;
9 /
Trigger created.
Nu, när du infogar data behöver du inte ange EMP_ID
kolumn-- den kommer automatiskt att fyllas i av utlösaren
SQL> insert into staff( staff_name ) values ('Justin');
1 row created.
SQL> select * from staff;
EMP_ID STAFF_NAME
---------- --------------------
1 Justin