Oracle Så här skapar du ett automatiskt ökningsfält med hjälp av sekvens

I Oracle kan du skapa ett automatiskt inkrementfält med "sekvens" databasobjekt som kan tilldelas som primära nycklar. Med hjälp av Oracle "sequence" -objekt kan du skapa nya värden för en kolumn. En Oracle-sekvens är ett objekt som ett bord eller en lagrad procedur. Exempel på genomgångsförklaringar ges.

Skapa en sekvens.

Syntax:

Skapa sekvensföljdsnamn
Börja med värde
ökning med värde
minvärdesvärde
maxvärdesvärde;

Låt oss gå igenom ett exempel.

Låt oss först skapa en emp bord med primär nyckelbegränsning på anst_id kolumn.

SQL> skapa tabell emp (
emp_id nummer (10),
fname varchar2 (25),
lname varchar2 (25),
begränsning pk_emp_id PRIMÄR KEY (emp_id)
);

Låt oss nu skapa en sekvens.

SQL> Skapa sekvens emp_sequence
börja med 1
öka med 1
minvalue 1
maxvalue 10000;

Nu har vi skapat ett sekvensobjekt som heter emp_sequence med startvärde som 1 och öka med 1 från 1 (minvärde) till 10000 (maxvärde).

Låt oss nu lägga in värdena i emp tabell.

SQL> infoga i emp (emp_id, fname, lname) värden (emp_sequence.nextval, 'Darvin', 'Johnson');
SQL> infoga emp (emp_id, fname, lname) värden (emp_sequence.nextval, 'Mig', 'Andrews');
SQL> infoga i emp (emp_id, fname, lname) värden (emp_sequence.nextval, 'Alex', 'Martin');
SQL> sätta in emp (emp_id, fname, lname) värden (emp_sequence.nextval, 'Jon', 'paul');
SQL> infoga i emp (emp_id, fname, lname) värden (emp_sequence.nextval, 'Yatin', 'Bones');

I emp_sequence.nextval var emp_sequence är namnet på sekvensen vi skapade ovan och NEXTVAL är en funktion som används för att tilldela nästa nummer från emp_sequence till anst_id kolumn i emp tabell.

Nu får vi se emp tabell.

SQL> välj * från emp; EMP_ID FNAME LNAME ---------- ------------------------- ------------ ------------- 1 Darvin Johnson 2 Mig Andrews 3 Alex Martin 4 Jon paul 5 Yatin Bones 

Nu kan du se "sekvens" av anst_id kolumnen har automatiskt inkrementerade värden från 1 till 5.