====== SET GENERATOR ======
===== Версии сервера =====
^ 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 ^
| Да | Да | Да | Да | Да | - | - | - | - | ? | ? |
:!: Конструкция языка устарела !
Конструкция SET GENERATOR поддерживается для обратной совместимости приложений и (возможно) будет удалена из следующих версий сервера. Вместо нее разработчики рекомендуют использовать [[ALTER SEQUENCE]].
===== Формат =====
SET GENERATOR name TO int;
^ Аргумент ^ Описание ^
|name |Имя существующего генератора. |
|int |Значение, что бы установить генератор, целое значение от -231 до 231-1.|
===== Описание =====
SET GENERATOR инициализирует начальное значение вновь созданного генератора или переустанавливает значение существующего генератора. Генератор обеспечивает уникальное, последовательное числовое значения с помощью функции [[GEN_ID()]]. Если новый генератор не инициализирован с помощью SET GENERATOR, его начальное значение, по умолчанию, ноль.
int - новое значение генератора. Когда функция [[GEN_ID()]] вставляет или изменяет значение столбца, это значение равно int увеличенное на определенный в функции [[GEN_ID()]] шаг.
Обратите внимание: Чтобы вынудить первое вставленное значение генератора к 1, используйте SET GENERATOR, чтобы определить начальное значение 0 и установите значение шага в функции [[GEN_ID()]] к 1.
:!: Когда переустанавливаете генератор, который обеспечивает значения для столбцов определенных, как [[PRIMARY KEY]] или [[UNIQUE]] ограничение целостности, будете осторожны, что бы новые значения не позволяли дублирования существующих значений столбцов, иначе все последующие вставки и модификации будут терпеть неудачу.
===== Пример =====
Следующая инструкция устанавливает генератор к значению 1 000:
SET GENERATOR CUST_NO_GEN TO 1000;
Если [[GEN_ID()]] сейчас обратится к генератору со значением шага 1, первое число возвращенное ей будет 1 001.
===== См. также =====
[[GEN_ID()]], [[CREATE GENERATOR]], [[DROP GENERATOR]], [[SET GENERATOR]], [[CREATE SEQUENCE]], [[DROP SEQUENCE]], [[ALTER SEQUENCE]]
===== Источник =====
langref.pdf