Kaj je sekvenca ?
Sekvenca je bazni objekt, ki smo ga ustvarili za generiranje numeričnih vrednosti.
Med delom s tabelami v zbirki podatkov Oracle z omejitvijo primarnega ključa moramo pogosto v tabelo vstaviti novo vrstico in ročno vnesti vrednost primarnegaključa tako, da zaporedoma povečamo prejšnjo vrednost. To lahko postane dolgočasno pri delu z velikimi tabelami z ogromnimi nabori podatkov.
Sekvenca ( zaporedje) je objekt, ki samodejno preveri vrednost prejšnjega primarnega ključa in ga pri vstavljanju nove vrstice poveča za vrednost ( kot smo jo določili ).
Primer :
- kreiramo tabelo zaposlenih *
CREATE TABLE zaposleni
(
zaposleni_id NUMBER(10) PRIMARY KEY,
ime VARCHAR(10),
priimek VARCHAR(10)
)
- vstavimo nekaj zapisov
INSERT INTO zaposleni VALUES(101, ‘Jure’,
‘Tepina’);
INSERT INTO zaposleni VALUES(102, ‘Andraž’,
‘Kralj’);
INSERT INTO zaposleni VALUES(103, ‘Iztok’,
‘Podbevšek’);
select * from zaposleni

CREATE SEQUENCE test_seq2
INCREMENT BY 1
START WITH 201
MAXVALUE 999
CACHE 50
NOCYCLE;
SELECT test_seq2.NEXTVAL FROM DUAL
SELECT test_seq2.NEXTVAL FROM DUAL
SELECT test_seq2.CURRVAL FROM DUAL

INSERT INTO zaposleni VALUES(test_seq2.NEXTVAL, ‘Andrej’,
‘Kopitar’);
INSERT INTO zaposleni VALUES(test_seq2.NEXTVAL, ‘Tine’,
‘Tič’);
select * from zaposleni

SELECT * FROM user_sequences;
SELECT * FROM all_sequences;