CREATE SEQUENCE

Semantiek

schema

Specifieer het schema dat de sequentie moet bevatten. Als u schema weglaat, maakt Oracle Database de reeks in uw eigen schema.

sequence

Specifieer de naam van de reeks die moet worden gemaakt.

Als u geen van de volgende clausules opgeeft, maakt u een oplopende reeks die begint met 1 en met 1 toeneemt zonder bovengrens. Als u alleen INCREMENT BY -1 opgeeft, wordt een aflopende reeks gemaakt die begint met -1 en zonder onderlimiet met 1 afneemt.

  • Om een reeks te maken die zonder limiet oploopt, laat u voor oplopende reeksen de parameter MAXVALUE weg of geeft u NOMAXVALUE op. Voor een aflopende reeks laat u de parameter MINVALUE weg of specificeert u NOMINVALUE.

  • Om een reeks te maken die stopt bij een vooraf gedefinieerde limiet, geeft u voor een oplopende reeks een waarde op voor de parameter MAXVALUE. Voor een aflopende reeks specificeert u een waarde voor de parameter MINVALUE. Specificeer ook NOCYCLE. Elke poging om een volgnummer te genereren nadat de limiet van de reeks is bereikt, leidt tot een fout.

  • Om een reeks te maken die opnieuw wordt gestart nadat een vooraf gedefinieerde limiet is bereikt, moet u waarden opgeven voor zowel de parameter MAXVALUE als de parameter MINVALUE. Geef ook CYCLE op. Als u MINVALUE niet opgeeft, wordt standaard NOMINVALUE opgegeven, wat de waarde 1 is.

INCREMENT BY Geef het interval tussen de reeksnummers op. Deze gehele waarde kan elk positief of negatief geheel getal zijn, maar kan niet 0 zijn. Deze waarde kan 28 of minder cijfers hebben. Het absolute van deze waarde moet kleiner zijn dan het verschil van MAXVALUE en MINVALUE. Als deze waarde negatief is, dan daalt de reeks. Als de waarde positief is, dan stijgt de reeks. Als u deze clausule weglaat, wordt het interval standaard op 1 gesteld.

START WITH Specificeer het eerste volgordenummer dat moet worden gegenereerd. Gebruik deze clausule om een oplopende reeks te beginnen bij een waarde die groter is dan het minimum of om een aflopende reeks te beginnen bij een waarde die kleiner is dan het maximum. Voor oplopende sequenties is de standaardwaarde de minimumwaarde van de sequentie. Voor aflopende sequenties is de standaardwaarde de maximumwaarde van de sequentie. Deze gehele waarde kan 28 of minder cijfers hebben.

Note:

Deze waarde is niet noodzakelijkerwijs de waarde waarnaar een oplopende reeks cycli na het bereiken van zijn maximum of minimum waarde.

MAXVALUE Specificeer de maximale waarde die de reeks kan genereren. Deze gehele waarde kan 28 of minder cijfers hebben. MAXVALUE moet gelijk zijn aan of groter dan START WITH en moet groter zijn dan MINVALUE.

NOMAXVALUE Specificeer NOMAXVALUE om een maximumwaarde van 1027 aan te geven voor een oplopende sequentie of -1 voor een aflopende sequentie. Dit is de standaardwaarde.

MINVALUE Specificeer de minimumwaarde van de reeks. Deze gehele waarde kan 28 of minder cijfers hebben. MINVALUE moet kleiner zijn dan of gelijk aan START WITH en moet kleiner zijn dan MAXVALUE.

NOMINVALUE Geef NOMINVALUE op om een minimumwaarde van 1 voor een oplopende reeks of -1026 voor een aflopende reeks aan te geven. Dit is de standaardwaarde.

CYCLE Geef CYCLE op om aan te geven dat de reeks waarden blijft genereren nadat de maximum- of minimumwaarde is bereikt. Nadat een oplopende reeks zijn maximumwaarde heeft bereikt, genereert hij zijn minimumwaarde. Nadat een aflopende reeks zijn minimum heeft bereikt, genereert hij zijn maximumwaarde.

NOCYCLE Geef NOCYCLE op om aan te geven dat de reeks geen waarden meer kan genereren nadat de maximum- of minimumwaarde is bereikt. Dit is de standaardwaarde.

CACHE Geef aan hoeveel waarden van de reeks de database vooraf toewijst en in het geheugen bewaart voor snellere toegang. Deze gehele waarde kan 28 of minder cijfers hebben. De minimumwaarde voor deze parameter is 2. Voor reeksen die cyclisch zijn, moet deze waarde kleiner zijn dan het aantal waarden in de cyclus. U kunt niet meer waarden cachen dan er in een gegeven cyclus van volgnummers passen. Daarom moet de maximaal toegestane waarde voor CACHE lager zijn dan de waarde die wordt bepaald door de volgende formule:

(CEIL (MAXVALUE - MINVALUE)) / ABS (INCREMENT)

Als zich een systeemstoring voordoet, gaan alle in de cache opgeslagen sequentiewaarden die niet zijn gebruikt in vastgelegde DML-statements verloren. Het potentiële aantal verloren waarden is gelijk aan de waarde van de parameter CACHE.

Note:

Oracle raadt aan de instelling CACHE te gebruiken om de prestaties te verbeteren als u sequenties gebruikt in een Oracle Real Application Clusters-omgeving.

NOCACHE Specificeer NOCACHE om aan te geven dat waarden van de sequentie niet vooraf worden toegewezen. Als u zowel CACHE als NOCACHE weglaat, slaat de database standaard 20 sequentienummers op in de cache.

ORDER Specificeer ORDER om te garanderen dat sequentienummers worden gegenereerd in volgorde van aanvraag. Deze clausule is nuttig als u de sequentienummers gebruikt als tijdstempels. Het garanderen van de volgorde is gewoonlijk niet belangrijk voor sequenties die worden gebruikt om primaire sleutels te genereren.

ORDER is alleen nodig om het op volgorde genereren te garanderen als u Oracle Real Application Clusters gebruikt. Als u exclusieve modus gebruikt, worden de volgnummers altijd op volgorde gegenereerd.

NOORDER Specificeer NOORDER als u niet wilt garanderen dat de volgnummers op volgorde van aanvraag worden gegenereerd. Dit is de standaardinstelling.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.