ALTER SEQUENCE¶
Modifie les propriétés d’une séquence existante.
- Voir aussi :
CREATE SEQUENCE , DROP SEQUENCE , SHOW SEQUENCES , DESCRIBE SEQUENCE
Syntaxe¶
ALTER SEQUENCE [ IF EXISTS ] <name> RENAME TO <new_name>
ALTER SEQUENCE [ IF EXISTS ] <name> [ SET ] [ INCREMENT [ BY ] [ = ] <sequence_interval> ]
ALTER SEQUENCE [ IF EXISTS ] <name> SET
[ { ORDER | NOORDER } ]
[ COMMENT = '<string_literal>' ]
Paramètres¶
name
Indique l’identifiant de la séquence à modifier. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.
Pour plus de détails sur les identificateurs, voir Exigences relatives à l’identificateur.
RENAME TO new_name
Indique le nouvel identificateur de la séquence ; doit être unique pour le schéma.
Pour plus de détails sur les identificateurs, voir Exigences relatives à l’identificateur.
Vous pouvez déplacer l’objet vers une autre base de données et/ou un autre schéma tout en renommant éventuellement l’objet. Pour ce faire, spécifiez une valeur
new_name
qualifiée qui inclut le nouveau nom de la base de données et/ou du schéma sous la formedb_name.schema_name.object_name
ouschema_name.object_name
, respectivement.Note
La base de données et/ou le schéma de destination doivent déjà exister. En outre, un objet portant le même nom ne peut pas déjà exister dans le nouvel emplacement ; sinon, l’instruction renvoie une erreur.
Le déplacement d’un objet vers un schéma d’accès géré est interdit sauf si le propriétaire de l’objet (c’est-à-dire le rôle qui a le privilège OWNERSHIP sur l’objet) est également propriétaire du schéma cible.
Lorsqu’un objet est renommé, les autres objets qui le référencent doivent être mis à jour avec le nouveau nom.
SET...
Spécifie les propriétés à définir pour la séquence :
[ INCREMENT [ BY ] sequence_interval ]
Spécifie l’intervalle d’incrémentation de la séquence :
Pour un intervalle de séquence positif
n
, les valeurs suivantesn-1
sont réservées par chaque appel de séquence.Pour un intervalle de séquence négatif
-n
, les valeurs inférieures suivantesn-1
sont réservées par chaque appel de séquence.
Les valeurs prises en charge sont n’importe quelle valeur non nulle qui peut être représentée par un entier de complément de deux de 64 bits.
{ ORDER | NOORDER }
Indique si les valeurs de la séquence sont générées par ordre croissant ou non.
ORDER spécifie que les valeurs générées pour une séquence ou une colonne auto-incrémentée sont dans l’ordre croissant sont en ordre croissant (ou, si l’intervalle est une valeur négative, en ordre décroissant).
Par exemple, si une séquence ou une colonne auto-incrémentée comporte START 1 INCREMENT 2, les valeurs générées peuvent être
1
,3
,5
,7
,9
, etc.NOORDER précise que l’ordre croissant des valeurs n’est pas garanti.
Par exemple, si une séquence comporte START 1 INCREMENT 2, les valeurs générées peuvent être
1
,3
,101
,5
,103
, etc.NOORDER peut améliorer les performances lorsque plusieurs opérations d’insertion doivent être effectuées simultanément (par exemple, lorsque plusieurs clients exécutent plusieurs instructions INSERT).
Note
Si une séquence est réglée sur NOORDER, vous ne pouvez pas la changer en ORDER.
COMMENT = 'string_literal'
Ajoute un commentaire ou remplace un commentaire existant pour la séquence.
Notes sur l’utilisation¶
La première valeur initiale d’une séquence ne peut pas être modifiée après la création de la séquence.
Concernant les métadonnées :
Attention
Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.
Exemples¶
Renommer la séquence myseq
en newseq
:
ALTER SEQUENCE myseq RENAME TO newseq;