Oracle - Zurücksetzen einer Sequenz

  • So setzen Sie eine Sequenz-SEQ zurück, die mit dem Befehl erstellt wurde:
    •  CREATE SEQUENCE seq; 
  • Suchen Sie nach dem aktuellen Wert mit dem Befehl:
    •  SEQ.CURRVAL SELECT FROM DUAL; 
  • Ändern Sie dann die Reihenfolge, indem Sie die Option hinzufügen, indem Sie den Inkrementierungswert VAL (aktueller Wert - 1) hinzufügen, um die Reihenfolge auf 1 zurückzusetzen:
    •  ALTER SEQUENCE SEQ INCREMENT von -VAL; 
  • Führen Sie dann den Befehl aus, der die Sequenz zurücksetzt:
    •  SEQ.NEXTVAL SELECT FROM DUAL; 
  • So stellen Sie das Inkrement der Sequenz wieder her:
    •  ALTER SEQUENCE SEQ INCREMENT um 1; 

Beispiel:

 SQL> create sequence seq; Sequenz erstellt. SQL> wähle seq.nextval aus dual; NEXTVAL ---------- 1 SQL> wähle seq.nextval aus dual; NEXTVAL ---------- 2 SQL> wähle seq.nextval aus dual; NEXTVAL ---------- 3 SQL> wähle seq.currval aus dual; CURRVAL ---------- 3 SQL> Sequenzfolge inkrementieren um -2; // 2 = SEQ.CURRVAL-1 Sequenz geändert. SQL> wähle seq.nextval aus dual; NEXTVAL ---------- 1 SQL> Sequenzfolge um 1 erhöhen; Reihenfolge geändert. 
Vorherige Artikel Nächster Artikel

Top-Tipps