Oracle - Сброс последовательности

  • Для сброса последовательности SEQ, созданной с помощью команды:
    •  СОЗДАТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ seq; 
  • Найдите его текущее значение с помощью команды:
    •  SEQ.CURRVAL ВЫБРАТЬ ИЗ ДВОЙНОГО; 
  • Затем измените последовательность, добавив параметр, добавив значение приращения VAL (текущее значение - 1), чтобы сбросить последовательность до 1:
    •  ALTER SEQUENCE SEQ INCREMENT по -VAL; 
  • Затем выполните команду, которая сбросит последовательность:
    •  SEQ.NEXTVAL ВЫБРАТЬ ИЗ ДВОЙНОГО; 
  • Чтобы восстановить приращение последовательности:
    •  ALTER SEQUENCE SEQ INCREMENT на 1; 

Пример:

 SQL> создать последовательность seq; Последовательность создана. SQL> выберите seq.nextval из двойного; NEXTVAL ---------- 1 SQL> выберите seq.nextval из двойного; NEXTVAL ---------- 2 SQL> выберите seq.nextval из двойного; NEXTVAL ---------- 3 SQL> выберите seq.currval из двойного; CURRVAL ---------- 3 SQL> изменить последовательность seq на -2; // 2 = SEQ.CURRVAL-1 Последовательность изменена. SQL> выберите seq.nextval из двойного; NEXTVAL ---------- 1 SQL> изменение последовательности seq на 1; Последовательность изменена. 
Предыдущая статья Следующая статья

Лучшие советы