Oracle ALTER SEQUENCE Per exemples pràctics

Oracle Alter Sequence Per Exemples Practics



A Oracle, una seqüència és un objecte de base de dades que genera una sèrie única de nombres enters que es poden utilitzar com a clau primària o per a qualsevol altre propòsit on es requereixi un número únic. L'ALTER SEQUENCE és una potent eina d'Oracle que permet modificar els atributs d'una seqüència a la base de dades. L'ordre ALTER SEQUENCE pot semblar descoratjadora al principi, però exemples pràctics us poden ajudar a entendre i utilitzar tot el seu potencial.

Aquesta guia tractarà els exemples següents:

Restableix el valor de la seqüència

Per restablir el valor de la seqüència o per reiniciar el valor de la seqüència des del seu valor inicial, el ALTERA LA SEQUÈNCIA 'ordre' amb el ' REINICIA Es pot utilitzar la clàusula. L'exemple es presenta a continuació:







ALTER SEQUENCE LINUXHINT_SEQ RESTART;

A l'ordre anterior, ' LINUXHINT_SEQ ” representa el nom de la seqüència.



Sortida



La sortida mostra que la seqüència s'ha restablert.





Canvieu els valors mínims de la seqüència

Quan es crea una seqüència a Oracle, el seu valor mínim s'estableix per defecte en 1. El ' ALTERA LA SEQUÈNCIA 'ordre' amb el ' VALOR MIN La clàusula ” es pot utilitzar per canviar el valor mínim de la seqüència. L'exemple es presenta a continuació:

ALTER SEQUENCE LINUXHINT_SEQ MINVALUE -1;

En aquest exemple, el nou valor mínim és -1 .



Sortida

La sortida mostra que s'ha canviat el valor mínim.

Canvieu els valors màxims de la seqüència

Per defecte, el valor màxim d'una seqüència d'Oracle és '10^27 - 1', que és el valor més gran possible per a un nombre decimal de 38 dígits. Per canviar el valor màxim de la seqüència, el ' ALTERA LA SEQUÈNCIA 'ordre' amb el ' VALOR MÀXIM Es pot utilitzar la clàusula. L'exemple es proporciona a continuació:

ALTER SEQUENCE LINUXHINT_SEQ MAXVALUE 1000;

A l'exemple anterior, el nou valor màxim serà 1000 .

Sortida

A la captura de pantalla, es pot veure que s'ha canviat el valor màxim.

Nota : A l'exemple anterior, la seqüència deixarà de generar valors quan arribi a 1000 i qualsevol intent de generar un valor més enllà d'aquest punt donarà lloc a un error.

Canvieu la mida de la memòria cau de la seqüència

La mida de la memòria cau decideix el nombre de números de seqüència que s'assignen prèviament i s'emmagatzemen a la memòria per a un accés més ràpid. Per canviar la mida de la memòria cau de la seqüència, utilitzeu ' CACHE 'clàusula amb el ' ALTERA LA SEQUÈNCIA ' comandament. A continuació es presenta un exemple:

ALTER SEQUENCE LINUXHINT_SEQ CACHE 50;

A l'exemple anterior, la mida de la memòria cau de la seqüència s'estableix a 50 . Significa que el número de seqüència 50 s'assignarà prèviament alhora per a un accés més ràpid.

Sortida

La sortida mostra que s'ha canviat la mida de la memòria cau.

Estableix la mida i l'ordre de la seqüència de memòria cau

Per establir la mida de la memòria cau de la seqüència i generar els números de seqüència en ordre, utilitzeu ' COMANDA ' i ' CACHE ' clàusules amb el ' ALTERA LA SEQUÈNCIA ' comandament. Aquí teniu un exemple:

ALTER SEQUENCE LINUXHINT_SEQ CACHE 100 ORDER;

En aquest exemple, el nou valor de mida de memòria cau serà 100 .

Sortida

La sortida mostrava que els canvis s'han fet a la seqüència.

Estableix la seqüència per generar valors descendents

L'interval entre els números de seqüència ve determinat pel nombre d'increment. El valor d'increment s'estableix a 1 per defecte, el que significa que es retorna el número següent de la sèrie cada vegada que es crida la seqüència. Quan l'increment s'estableix a -1, la seqüència genera nombres enters en ordre descendent.

Per configurar la seqüència per generar valors descendents, utilitzeu el botó “ INCREMENT DE ' amb el ' ALTERA LA SEQUÈNCIA ” i establiu el valor a -1. L'exemple es presenta a continuació:

ALTERA LA SEQUÈNCIA LINUXHINT_SEQ INCREMENTA EN -1;

En aquest exemple, el valor és -1 , que significa que cada vegada que es crida la seqüència, es retorna el número anterior de la seqüència.

Sortida

La sortida mostra que la seqüència s'ha configurat per generar valors descendents.

Canvieu el valor d'increment de la seqüència

Per canviar el valor d'increment de la seqüència, utilitzeu ' INCREMENT DE ' amb el ' ALTERA LA SEQUÈNCIA ” comanda i establiu el valor en conseqüència. L'exemple es proporciona a continuació:

ALTERA LA SEQUÈNCIA LINUXHINT_SEQ INCREMENTA EN 2;

En aquest exemple, el valor és 2 , el que significa que cada vegada que es crida la seqüència, el número següent de la seqüència s'incrementarà en 2.

Sortida

La sortida mostra que la seqüència s'ha alterat en conseqüència.

Altereu la seqüència per habilitar l'opció de cicle

Quan l'opció de cicle està habilitada per a una seqüència, la seqüència s'embolicarà i tornarà a començar des del principi (MINVALUE) un cop assoleixi el valor màxim (MAXVALUE). Per activar aquesta opció, utilitzeu el ' CICLE 'clàusula amb el ' ALTERA LA SEQUÈNCIA ' comandament. L'exemple es presenta a continuació:

ALTERA LA SEQUÈNCIA LINUXHINT_SEQ CYCLE;

Sortida

La sortida que mostra l'opció de cicle s'ha habilitat.

Altereu la seqüència per desactivar el cicle

Quan l'opció de cicle està desactivada per a una seqüència, la seqüència deixarà de generar valors un cop assoleixi el seu valor màxim (MAXVALUE) o mínim (MINVALUE), segons l'ordre de generació. Per desactivar aquesta opció, utilitzeu la clàusula 'NOCYCLE' amb l'ordre 'ALTER SEQUENCE'. L'exemple es proporciona a continuació:

ALTER SEQUENCE LINUXHINT_SEQ NOCYCLE;

Sortida

La sortida va mostrar que l'opció de cicle s'ha desactivat.

Altereu la seqüència per modificar diverses opcions

Escriviu l'ordre donada per establir que la seqüència tingui un increment negatiu de -1, un valor màxim de 10 i una opció de cicle activada:

ALTERA LA SEQUÈNCIA LINUXHINT_SEQ INCREMENTA EN -1 MAXVALUE 10 CICLE;

Sortida

La sortida va mostrar que els canvis s'havien fet a la seqüència amb èxit.

Conclusió

A Oracle, el ' ALTERA LA SEQUÈNCIA ” L'ordre us permet canviar els atributs d'una seqüència restablint el valor de la seqüència, canviant els valors mínim i màxim, el valor d'increment, la mida de la memòria cau, l'ordenació i activant o desactivant l'opció de cicle. Aquests canvis són útils en molts tipus de circumstàncies, com ara quan necessiteu alterar el valor inicial d'una seqüència o ajustar la mida de la memòria cau per obtenir un millor rendiment. Aquesta publicació ha explicat diversos casos d'ús de l'ordre ALTER SEQUENCE mitjançant exemples pràctics.