Oracle ALTER SEQUENCE door praktische voorbeelden

Oracle Alter Sequence Door Praktische Voorbeelden



In Oracle is een reeks een databaseobject dat een unieke reeks gehele getallen genereert die kan worden gebruikt als primaire sleutel of voor elk ander doel waarvoor een uniek nummer vereist is. De ALTER SEQUENCE is een krachtige tool in Oracle waarmee u de kenmerken van een reeks in de database kunt wijzigen. Het ALTER SEQUENCE-commando lijkt in eerste instantie misschien ontmoedigend, maar praktische voorbeelden kunnen u helpen het volledige potentieel ervan te begrijpen en te benutten.

Deze gids behandelt de volgende voorbeelden:

Stel de reekswaarde opnieuw in

Om de reekswaarde te resetten of om de reekswaarde opnieuw te starten vanaf de startwaarde, VOLGORDE WIJZIGEN ” commando met de “ HERSTARTEN ”-clausule kan worden gebruikt. Het voorbeeld wordt hieronder gegeven:







WIJZIG SEQUENTIE LINUXHINT_SEQ HERSTART;

In het bovenstaande commando, ' LINUXHINT_SEQ ” staat voor de naam van de reeks.



Uitgang



De uitvoer geeft aan dat de reeks is gereset.





Wijzig de minimumwaarden van de reeks

Wanneer een reeks wordt gemaakt in Oracle, is de minimumwaarde standaard ingesteld op 1. De ' VOLGORDE WIJZIGEN ” commando met de “ MINWAARDE ”-clausule kan worden gebruikt om de minimumwaarde van de reeks te wijzigen. Het voorbeeld wordt hieronder gegeven:

WIJZIG SEQUENTIE LINUXHINT_SEQ MINVALUE -1;

In dit voorbeeld is de nieuwe minimumwaarde -1 .



Uitgang

De uitvoer liet zien dat de minimumwaarde is gewijzigd.

Wijzig de maximale waarden van de reeks

Standaard is de maximale waarde van een Oracle-reeks '10^27 - 1', wat de grootst mogelijke waarde is voor een 38-cijferig decimaal getal. Om de maximale reekswaarde te wijzigen, drukt u op de knop ' VOLGORDE WIJZIGEN ” commando met de “ MAXIMUM WAARDE ”-clausule kan worden gebruikt. Het voorbeeld wordt hieronder gegeven:

WIJZIG SEQUENTIE LINUXHINT_SEQ MAXVALUE 1000;

In het bovenstaande voorbeeld wordt de nieuwe maximumwaarde 1000 .

Uitgang

In de schermafbeelding is te zien dat de maximale waarde is gewijzigd.

Opmerking : In het bovenstaande voorbeeld stopt de reeks met het genereren van waarden nadat deze 1000 heeft bereikt, en elke poging om een ​​waarde voorbij dat punt te genereren zal resulteren in een fout.

Wijzig de cachegrootte van de reeks

De cachegrootte bepaalt het aantal volgnummers dat vooraf wordt toegewezen en in het geheugen wordt opgeslagen voor snellere toegang. Om de cachegrootte van de reeks te wijzigen, gebruikt u de ' CACHEN ” clausule met de “ VOLGORDE WIJZIGEN ” commando. Hieronder wordt een voorbeeld gegeven:

WIJZIG SEQUENTIE LINUXHINT_SEQ CACHE 50;

In het bovenstaande voorbeeld is de cachegrootte van de reeks ingesteld op vijftig . Dit betekent dat het volgnummer 50 per keer vooraf wordt toegewezen voor snellere toegang.

Uitgang

De uitvoer laat zien dat de cachegrootte is gewijzigd.

Stel de grootte en volgorde van de cachevolgorde in

Gebruik de ' VOLGORDE ' En ' CACHEN ” clausules met de “ VOLGORDE WIJZIGEN ” commando. Hier is een voorbeeld:

WIJZIG SEQUENTIE LINUXHINT_SEQ CACHE 100 VOLGORDE;

In dit voorbeeld is de nieuwe waarde voor de cachegrootte 100 .

Uitgang

De uitvoer gaf aan dat de wijzigingen in de reeks zijn aangebracht.

Stel de volgorde in om aflopende waarden te genereren

Het interval tussen volgnummers wordt bepaald door het oplopende nummer. De ophogingswaarde is standaard ingesteld op 1, wat betekent dat het volgende getal in de reeks wordt geretourneerd telkens wanneer de reeks wordt aangeroepen. Als de toename is ingesteld op -1, genereert de reeks gehele getallen in aflopende volgorde.

Om de reeks in te stellen om aflopende waarden te genereren, gebruikt u de VERHOGING DOOR ' met de ' VOLGORDE WIJZIGEN ” commando en stel de waarde in op -1. Het voorbeeld wordt hieronder gegeven:

WIJZIG SEQUENCE LINUXHINT_SEQ VERHOGEN MET -1;

In dit voorbeeld is de waarde -1 , wat betekent dat elke keer dat de reeks wordt aangeroepen, het vorige nummer in de reeks wordt geretourneerd.

Uitgang

De uitvoer geeft aan dat de reeks is ingesteld om aflopende waarden te genereren.

Wijzig de toenamewaarde van de reeks

Om de toenamewaarde van de reeks te wijzigen, gebruikt u de knop ' VERHOGING DOOR ' met de ' VOLGORDE WIJZIGEN ” commando en stel de waarde dienovereenkomstig in. Het voorbeeld wordt hieronder gegeven:

VERANDER SEQUENCE LINUXHINT_SEQ VERHOGING MET 2;

In dit voorbeeld is de waarde 2 , wat betekent dat elke keer dat de reeks wordt aangeroepen, het volgende nummer in de reeks met 2 wordt opgehoogd.

Uitgang

De uitvoer gaf aan dat de volgorde dienovereenkomstig is gewijzigd.

Wijzig de volgorde om de cyclusoptie in te schakelen

Wanneer de cyclusoptie is ingeschakeld voor een sequentie, zal de sequentie zich omdraaien en opnieuw beginnen vanaf het begin (MINVALUE) zodra de maximale waarde (MAXVALUE) is bereikt. Om deze optie in te schakelen, gebruikt u de ' FIETS ” clausule met de “ VOLGORDE WIJZIGEN ” commando. Het voorbeeld wordt hieronder gegeven:

WIJZIG SEQUENTIE LINUXHINT_SEQ CYCLUS;

Uitgang

De uitgang die de cyclusoptie weergeeft, is ingeschakeld.

Wijzig de volgorde om de cyclus uit te schakelen

Wanneer de cyclusoptie is uitgeschakeld voor een reeks, stopt de reeks met het genereren van waarden zodra deze de maximale waarde (MAXVALUE) of minimumwaarde (MINVALUE) bereikt, afhankelijk van de volgorde van genereren. Om deze optie uit te schakelen, gebruikt u de clausule 'NOCYCLE' met de opdracht 'ALTER SEQUENCE'. Het voorbeeld wordt hieronder gegeven:

WIJZIG SEQUENTIE LINUXHINT_SEQ NOCYCLE;

Uitgang

De uitvoer liet zien dat de cyclusoptie is uitgeschakeld.

Wijzig de volgorde om meerdere opties te wijzigen

Typ de gegeven opdracht om de reeks in te stellen op een negatieve toename met -1, een maximale waarde van 10 en een ingeschakelde cyclusoptie:

WIJZIG SEQUENCE LINUXHINT_SEQ VERHOGEN MET -1 MAXVALUE 10 CYCLUS;

Uitgang

De uitvoer toonde aan dat de wijzigingen in de reeks met succes waren aangebracht.

Conclusie

Bij Orakel is de ' VOLGORDE WIJZIGEN Met de opdracht ” kunt u de kenmerken van een reeks wijzigen door de reekswaarde opnieuw in te stellen, de minimum- en maximumwaarden, de ophogingswaarde, de cachinggrootte, de volgorde en de cyclusoptie in of uit te schakelen. Deze wijzigingen zijn in veel soorten omstandigheden nuttig, bijvoorbeeld wanneer u de startwaarde van een reeks moet wijzigen of de cachegrootte moet aanpassen voor betere prestaties. In dit bericht zijn verschillende use-cases van het ALTER SEQUENCE-commando uitgelegd aan de hand van praktische voorbeelden.