Maison > Article > base de données > Comment modifier une séquence dans Oracle
Méthode : 1. Utilisez l'instruction DROP SEQUENCE pour supprimer la séquence, puis utilisez l'instruction Create séquence pour en créer une nouvelle ; 2. Utilisez Increment By pour modifier la valeur initiale de la séquence, et la syntaxe est "ALTER SEQUENCE". ...INCRÉMENT PAR valeur".
L'environnement d'exploitation de ce tutoriel : système Windows 10, version Oracle 11g, ordinateur Dell G3.
La séquence Oracle (Séquence) est principalement utilisée pour générer des numéros de série et est souvent utilisée dans les applications, notamment comme valeurs d'identification, qui sont souvent utilisées comme clés primaires de table.
Cependant, parfois lorsqu'il est nécessaire de modifier la valeur initiale de la séquence (START WITH), certains collègues utilisent cette instruction pour modifier : modifier la séquence nom de la séquence commencer par xxxxxxxx. Cependant, dans Oracle DB, il n'existe pas de syntaxe de ce type pour modifier les séquences. Voici plusieurs méthodes de modification :
1 Supprimez d'abord la séquence, puis créez-la à nouveau.
Cette méthode est plus violente et plus pratique Si la séquence est utilisée, cela affectera l'utilisation normale de l'application.
Si aucune instruction conditionnelle n'est ajoutée, le format de séquence par défaut créé est le suivant :
Sémantique :
INCREMENT BY : Spécifiez l'étape de croissance de la séquence. Peut être un entier positif (ordre croissant) ou négatif (ordre décroissant), mais ne peut pas être 0. Précision maximale 28.
START BY : Précisez le numéro de départ de la séquence. La valeur par défaut est le minimum de séquence.
MAXVALUE : Spécifie la valeur maximale de la séquence. Maximum 28 bits. Doit être supérieur ou égal à la valeur de départ et supérieur ou égal à la valeur minimale de la séquence.
NOMAXVALUE : Aucune valeur maximale (en fait 10^27 ou -1). default
MINVALUE : Spécifie la valeur minimale de la séquence.
NOMINVALUE : Aucune valeur minimale (en fait 1 ou -10^26). Default
CYCLE : Spécifie que la séquence continuera à être générée à partir de zéro après avoir atteint la valeur maximale ou minimale.
NOCYCLE : Pas de génération de cycle. Par défaut.
CACHE : Spécifiez le nombre de valeurs de séquence pré-allouées dans la mémoire de la base de données pour une récupération rapide. La valeur minimale du cache est 2.
Pour supprimer une séquence, vous devez disposer de l'autorisation de suppression de toute séquence
Syntaxe :
Exemple :
DROP SEQUENCE oe.customers_seq;
2. Modifiez la valeur initiale via Incrémenter de.
Par exemple : si le nom de la séquence est SEQ_TEST, la valeur initiale est 13 et que vous souhaitez maintenant définir la valeur initiale sur 1013, la valeur Incrément de est : 1000 (1013-13)
1) Exécution :
ALTER SEQUENCE SEQ_TEST INCREMENT BY 1000;
2) Exécution :
SELECT SEQ_TEST.NEXTVAL FROM DUAL;
3) Exécution :
ALTER SEQUENCE SEQ_TEST INCREMENT BY 1;
Tutoriel recommandé : "Tutoriel vidéo Oracle"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!