Инструменты пользователя

Инструменты сайта


drop_generator

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
drop_generator [2008/01/29 00:18]
193.110.114.140
drop_generator [2008/04/30 03:52] (текущий)
Строка 1: Строка 1:
 +====== DROP 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 ^
 +|  -  |  -  |  Да  |  Да  |  Да  |  Да  |  Да  |  Да  |  Да  |  ?  |  ?  |
 +
 +===== Формат =====
 +<​code>​
 +DROP GENERATOR <​наименование>;​
 +</​code>​
 +
 +
 +
 +===== Описание =====
 +Оператор,​ удаляющий генератор <​наименование>​ в текущей БД.
 +
 +Удалить генератор может либо его владелец либо SYSDBA при условии что его нет в зависимостях других обьектов. Например,​ генератор не используется в триггерах/​хранимых процедурах.
 +
 +:?: Узнать список объектов где используется генератор (допустим с именем **MY_GENERATOR**) можно при помощи следующего скрипта:​
 +<​code>​
 +SELECT D.RDB$DEPENDENT_NAME,​ T.RDB$TYPE_NAME
 +FROM   ​RDB$DEPENDENCIES D, RDB$TYPES T
 +WHERE  (D.RDB$DEPENDED_ON_NAME = '​MY_GENERATOR'​)
 +  AND  (T.RDB$TYPE = D.RDB$DEPENDENT_TYPE)
 +  AND  (T.RDB$FIELD_NAME = '​RDB$OBJECT_TYPE'​)
 +</​code>​
 +
 +:!: Конструкция появилась только в Firebird v1.5. В ранних версиях сервера удалить созданный генератор [[CREATE GENERATOR]] средствами DDL было невозможно. Для удаления генератора в более ранних версиях сервера использовался оператор DML 
 +<​code>​
 +DELETE FROM RDB$GENERATORS R WHERE (R.RDB$GENERATOR_NAME = '​GEN_CUSTOMERS_ID'​);​
 +</​code>​
 +
 +:!: Конструкция считается устаревшей. Для управления генераторами рекомендуется использовать конструкции [[CREATE SEQUENCE]] / [[DROP SEQUENCE]]
 +
 +===== Пример =====
 +<​code>​
 +DROP GENERATOR GEN_CUSTOMERS_ID;​
 +</​code>​
 +
 +===== См. также =====
 +[[CREATE GENERATOR]], ​ [[SET GENERATOR]], ​ [[CREATE SEQUENCE]], ​ [[ALTER SEQUENCE]], ​ [[DROP SEQUENCE]]
 +
 +===== Источник =====
  
drop_generator.txt · Последние изменения: 2008/04/30 03:52 (внешнее изменение)