In Oracle, è possibile creare un campo di incremento automatico utilizzando l'oggetto di database 'sequenza' che può essere assegnato come chiave primaria. Utilizzando l'oggetto "sequenza" di Oracle, è possibile generare nuovi valori per una colonna. Una sequenza Oracle è un oggetto come una tabella o una stored procedure. Sono forniti esempi con spiegazioni dettagliate.
Crea una sequenza.
Sintassi:
Crea sequenza sequence_name
inizia con valore
incrementa di valore
valore minimo
valore massimo;
Facciamo un esempio.
Per prima cosa, creiamo un emp tabella con vincolo di chiave primaria su emp_id colonna.
SQL> create table emp (
numero emp_id (10),
fname varchar2 (25),
lname varchar2 (25),
vincolo pk_emp_id PRIMARY KEY (emp_id)
);
Ora creiamo una sequenza.
SQL> Crea sequenza emp_sequence
inizia con 1
incrementa di 1
minvalue 1
valore massimo 10000;
Ora abbiamo creato un oggetto sequenza chiamato emp_sequence con valore iniziale come 1 e incremento di 1 da 1 (valore minimo) a 10000 (valore massimo).
Ora inseriamo i valori nella tabella emp.
SQL> inserire nei valori emp (emp_id, fname, lname) (emp_sequence.nextval, 'Darvin', 'Johnson');
SQL> inserire nei valori emp (emp_id, fname, lname) (emp_sequence.nextval, 'Mig', 'Andrews');
SQL> inserire nei valori emp (emp_id, fname, lname) (emp_sequence.nextval, 'Alex', 'Martin');
SQL> inserire nei valori emp (emp_id, fname, lname) (emp_sequence.nextval, 'Jon', 'paul');
SQL> inserire nei valori emp (emp_id, fname, lname) (emp_sequence.nextval, 'Yatin', 'Bones');
Nel emp_sequence.nextval dove emp_sequence è il nome della sequenza che abbiamo creato sopra e nextval è una funzione che viene utilizzata per assegnare il numero successivo da emp_sequence a emp_id colonna in emp tavolo.
Ora vediamo il emp tavolo.
SQL> seleziona * da emp; EMP_ID FNAME LNAME ---------- ------------------------- ------------ ------------- 1 Darvin Johnson 2 Mig Andrews 3 Alex Martin 4 Jon paul 5 Yatin Bones
Ora puoi vedere usando 'sequenza' il emp_id la colonna ha valori incrementati automaticamente da 1 a 5.