Scusate ho una domanda sui trigger ( Oracle )
Si vuole definire un trigger che autoincrementa un attributo ( per esempio la chiave ) ad ogni INSERT
il professore ha fatto:
CREATE SEQUENCE sequenza1
start with 1
increment by 1;
CREATE SEQUENCE sequenza2
start with 1
increment by 1;
CREATE OR REPLACE
TRIGGER auto_trigger1
BEFORE INSERT ON Impiegati_Logr
FOR EACH ROW
BEGIN
SELECT sequenza1.nextval
INTO :new.ID FROM dual;
end;
CREATE OR REPLACE
TRIGGER auto_trigger2
BEFORE INSERT ON Impiegati_Logr
FOR EACH ROW
BEGIN
SELECT sequenza2.nextval
INTO :new.ID FROM dual
END;
INSERT INTO Impiegati_Logr( Logdata, Azione ) VALUES (sysdate , 'update' );
SELECT *
FROM Impiegati_Logr
Ora... varie domande...
1) una SEQUENCE ha sempre uno start e un increment? O si può usare anche per altre cose??
2) quando usa sequenza1.nextval ... nextval è una parola chiave del linguaggio o cosa???
3) FROM dual; che significa

sono entrambe parole chiavi??
4) Perchè definsice due sequenze e due trigger per fare la stessa cosa??? Mi sfugge qualcosa..
help
