====== ALTER SEQUENCE ======
===== Версии сервера =====
^ 0.9 ^ 1.0 ^ 1.5.3 ^ 1.5.4 ^ 1.5.5 ^ 2.0 ^ 2.0.3 ^ 2.0.4 ^ 2.1 ^ 2.5 ^ 3.0 ^
| - | - | - | - | - | Да | Да | Да | Да | ? | ? |
===== Формат =====
ALTER SEQUENCE RESTART WITH ;
^ Аттрибут ^ Значение ^
| |Имя существующего генератора, созданного при помощи [[create_generator|CREATE SEQUENCE]]|
| |Новое значение генератора|
===== Описание =====
ALTER SEQUENCE инициализирует начальное значение вновь созданного генератора или переустанавливает значение существующего генератора. Генератор обеспечивает уникальное, последовательное числовое значения с помощью функции GEN_ID(). Если новый генератор не инициализирован с помощью ALTER SEQUENCE, его начальное значение, по умолчанию, ноль.
- новое значение генератора. Когда функция [[GEN_ID()]] вставляет или изменяет значение столбца, это значение равно int увеличенное на определенный в функции [[GEN_ID()]] шаг.
:!: Чтобы вынудить первое вставленное значение генератора к 1, используйте ALTER SEQUENCE, чтобы определить начальное значение 0 и установите значение шага в функции [[GEN_ID()]] к 1.
:!: Когда переустанавливаете генератор, который обеспечивает значения для столбцов определенных, как [[constraint|PRIMARY KEY]] или [[constraint|UNIQUE]] ограничение целостности, будете осторожны, что бы новые значения не позволяли дублирования существующих значений столбцов, иначе все последующие вставки и модификации будут терпеть неудачу.
:!: Для использование возможности необходим Firebird v2.0 и выше.
===== Пример =====
Следующая инструкция устанавливает генератор к значению 1 000:
ALTER SEQUENCE CUST_NO_GEN RESTART WITH 1000;
===== См. также =====
[[create_generator|CREATE GENERATOR\SEQUENCE]], [[DROP SEQUENCE]], [[GEN_ID(!)]], [[NEXT VALUE FOR]]
===== Источник =====
langref.pdf