FirebirdSQL logo

CREATE SEQUENCE

Назначение

Создание новой последовательности (генератора).

Доступно в

DSQL, ESQL

Синтаксис
CREATE {SEQUENCE | GENERATOR} seq_name
[START WITH start_value] [INCREMENT [BY] increment]
Table 1. Параметры оператора CREATE SEQUENCE
Параметр Описание

seq_name

Имя последовательности (генератора). Может содержать до 63 символов.

start_value

Начальное значение последовательности (генератора).По умолчанию равно 1.

increment

Шаг приращения.4 байтовое целое число.По умолчанию равно 1.

Оператор CREATE SEQUENCE создаёт новую последовательность.Слова SEQUENCE и GENERATOR являются синонимами.Вы можете использовать любое из них, но рекомендуется использовать SEQUENCE.

В момент создания последовательности ей устанавливается значение, указанное в необязательном предложении START WITH минус значение приращения указанное в предложении INCREMENT [BY].Если предложение STARTING WITH отсутствует, то последовательности устанавливается значение равное 1.Таким образом, если начальное значение последовательности равно 100, а приращение 10, то первое значение выданное оператором NEXT VALUE FOR будет равно 100.

Note

До Firebird 4.0, первое значение выданное оператором NEXT VALUE FOR было равно 110.

Необязательное предложение INCREMENT [BY] позволяет задать шаг приращения для оператора NEXT VALUES FOR.По умолчанию шаг приращения равен единице.Приращение не может быть установлено в ноль для пользовательских последовательностей.Значение последовательности изменяется также при обращении к функции GEN_ID, где в качестве параметра указывается имя последовательности и значение приращения, которое может быть отлично от указанного в предложении INCREMENT BY.

Кто может создать последовательность?

Выполнить оператор CREATE SEQUENCE (CREATE GENERATOR) могут:

Пользователь, создавший последовательность, становится её владельцем.