Qui peut modifier la séquence ?
L’instruction ALTER SEQUENCE (ALTER GENERATOR) peut être exécutée :
-
Le propriétaire de la séquence (générateur) ;
-
Utilisateurs ayant le privilège de `ALTER ANY SEQUENCE' (`ALTER ANY GENERATOR').
L’instruction ALTER SEQUENCE (ALTER GENERATOR) peut être exécutée :
Le propriétaire de la séquence (générateur) ;
Utilisateurs ayant le privilège de `ALTER ANY SEQUENCE' (`ALTER ANY GENERATOR').
Définissez la séquence EMP_NO_GEN à 145.
ALTER SEQUENCE EMP_NO_GEN RESTART WITH 145;
Réinitialise la valeur de la séquence à la valeur qui a été définie lors de la création de la séquence (ou lorsque la valeur a été définie précédemment).
ALTER SEQUENCE EMP_NO_GEN RESTART;
Modifier la valeur incrémentale de la séquence EMP_NO_GEN.
ALTER SEQUENCE EMP_NO_GEN INCREMENT BY 10;
SET GENERATOR, CREATE SEQUENCE, DROP SEQUENCE, NEXT VALUE FOR, GEN_ID.
CREATE OR ALTER SEQUENCECréer une nouvelle séquence ou modifier une séquence existante (générateur).
DSQL, ESQL
CREATE OR ALTER {SEQUENCE | GENERATOR} seq_name
[{START WITH start_value | RESTART}]
[INCREMENT [BY] increment]
| Paramètre | Description |
|---|---|
seq_name |
Le nom de la séquence (générateur). Peut contenir jusqu’à 63 caractères. |
start_value |
Valeur initiale de la séquence (générateur). La valeur par défaut est |
increment |
Incrément d’étape. 4 octets entiers. La valeur par défaut est |
Si la séquence n’existe pas, elle sera créée. Une séquence déjà existante sera modifiée, en conservant les dépendances de la séquence existante.
|
Important
|
L’instruction CREATE OR ALTER SEQUENCE exige qu’au moins une des phrases facultatives soit spécifiée. |
CREATE OR ALTER SEQUENCE EMP_NO_GEN
START WITH 10
INCREMENT BY 1;
DROP SEQUENCESuppression de la séquence (générateur).
DSQL, ESQL
DROP {SEQUENCE | GENERATOR} seq_name
| Paramètre | Description |
|---|---|
seq_name |
Le nom de la séquence (générateur). |
L’opérateur DROP SEQUENCE supprime une séquence existante (générateur). Les mots SEQUENCE et GENERATOR sont synonymes. Vous pouvez utiliser l’un ou l’autre, mais il est recommandé d’utiliser SEQUENCE. S’il existe des dépendances pour une séquence (générateur) existante, la suppression ne sera pas effectuée.
L’instruction DROP SEQUENCE (DROP GENERATOR) peut être exécutée :
Le propriétaire de la séquence (générateur) ;
Les utilisateurs ayant le privilège DROP ANY SEQUENCE (DROP ANY GENERATOR).
DROP SEQUENCE EMP_NO_GEN;
RECREATE SEQUENCECréer ou recréer une séquence (générateur).
DSQL, ESQL
RECREATE {SEQUENCE | GENERATOR} seq_name
[START WITH start_value]
[INCREMENT [BY] increment];
| Paramètre | Description |
|---|---|
seq_name |
Le nom de la séquence (générateur). Peut contenir jusqu’à 63 caractères. |
start_value |
Valeur initiale de la séquence (générateur). |
increment |
Incrément d’étape. Entier de 4 octets. |
L’opérateur RECREATE SEQUENCE crée ou recrée une séquence (générateur). Si une séquence portant ce nom existe déjà, l’opérateur RECREATE SEQUENCE tentera de la supprimer et de créer une nouvelle séquence. S’il existe des dépendances pour une séquence existante, l’opérateur RECREATE SEQUENCE ne sera pas exécuté.
RECREATE SEQUENCE EMP_NO_GEN
START WITH 10
INCREMENT BY 1;
SET GENERATORRègle la valeur de la séquence ou de l’oscillateur sur la valeur définie.
DSQL, ESQL
SET GENERATOR seq_name TO new_val
| Paramètre | Description |
|---|---|
seq_name |
Le nom de la séquence (générateur). |
new_val |
Nouvelle valeur de la séquence (oscillateur). Un nombre entier de 64 bits dans la plage -263 . 263 - 1 |
L’opérateur SET GENERATOR fixe la valeur de la séquence ou du générateur à la valeur spécifiée.
|
Note
|
L’opérateur Une utilisation imprudente de l’opérateur |
L’instruction SET GENERATOR peut être exécutée :
Le propriétaire de la séquence (générateur) ;
Utilisateurs avec le privilège ALTER ANY SEQUENCE (ALTER ANY GENERATOR).
SET GENERATOR EMP_NO_GEN TO 145;
|
Note
|
La même chose peut être faite en utilisant l’opérateur ALTER SEQUENCE
|