double arrow

Описание. SET GENERATOR инициализирует начальное значение вновь созданного генератора или переустанавливает значение существующего генератора

SET TERM

Примеры

Синтаксис

Описание

SET GENERATOR

SET GENERATOR инициализирует начальное значение вновь созданного генератора или переустанавливает значение существующего генератора. Генератор обеспечивает уникальное, последовательное числовое значения с помощью функции GET_ID(). Если новый генератор не инициализирован с помощью SET GENERATOR, его начальное значение, по умолчанию, ноль.

Обратите внимание: Чтобы установить первое вставленное значение генератора в 1, используйте SET GENERATOR, чтобы определить начальное значение 0 и установите значение шага в функции GEN_ID() в 1.

Важно: Когда переустанавливаете генератор, который обеспечивает значения для столбцов определенных, как PRIMARY KEY или UNIQUE ограничение целостности, будете осторожны, что бы новые значения не позволяли дублирования существующих значений столбцов, иначе все последующие вставки и модификации будут терпеть неудачу.

SET GENERATOR name TO int;

Аргумент Описание
name Имя существующего генератора.
int Значение, чтобы установить генератор, целое значение от -231 до 231 - 1.

Следующая инструкция устанавливает генератор к значению 1 000:

SET GENERATOR CUST_NO_GEN TO 1000;

Если GEN_ID() сейчас обратится к генератору со значением шага 1, первое число возвращенное ей будет 1 001.

Пример:

CREATE GENERATOR GEN_ACCESSORIES_ID_ACCESSORIES;

SET GENERATOR GEN_ACCESSORIES_ID_ACCESSORIES TO 10;

CREATE PROCEDURE GET_ID_ACCESSORIES_ACCESSORIES

RETURNS (ID INTEGER)

AS

BEGIN

ID = GEN_ID(GEN_ACCESSORIES_ID_ACCESSORIES, 1);

END;

GRANT EXECUTE ON PROCEDURE GET_ID_ACCESSORIES_ACCESSORIES TO ACCOUNTANT, MANAGER;

SET TERM определяет, какой символ или строка символов завершает команду.

По умолчанию, isql команды должны быть завершены точкой с запятой (;). Используйте SET TERM, чтобы изменить символ завершения.

SET TERM обычно используется совместно с CREATE PROCEDURE или CREATE TRIGGER. Процедуры и триггеры определены, используя язык процедур и триггеров, в котором инструкция всегда заканчивается точкой с запятой. Процедура или триггер непосредственно должна быть завершена символом отличным от точки с запятой.

Текстовый файл, содержащий определение CREATE PROCEDURE или CREATE TRIGGER, должен включать одну команду SET TERM перед определением, и соответственно после определения. Начальный SET TERM определяет новый завершающий символ; конечный SET TERM восстанавливает точку с запятой (;), как по умолчанию.

Использование SET TERM изнутри isql сессии имеет тот же эффект, как использование терминатора из командной строки.


Сейчас читают про: