Страница 1 из 1
domain "POS_INT"
Добавлено: 07 дек 2005, 05:30
Вадим Снопов
Везет ан глюки:
создал домен "POS_INT", теперь не могу удалить - сервер (FB1.5.2) отвечает, что операции с системными объектами запрещены.
Как избавиться?
Добавлено: 07 дек 2005, 08:29
Dimitry Sibiryakov
Без _точного_ текста ошибки сказать трудно, но, может быть, удалить объекты этот домен использующие? А после Commit и реконнект.
Добавлено: 07 дек 2005, 12:07
Вадим Снопов
зависимых объектов нет, код ошибки
==
This operation is not defined for system tables.
unsuccessful metadata update.
Column not found.
==
Добавлено: 07 дек 2005, 14:06
Dimitry Sibiryakov
Так-то лучше. Судя по "Column not found" ты пытаешься дропнуть что-то не то. Либо команду неправильно сформировал, либо в имени домена опечатался.
Прежде чем печатать гневный ответ, что ошибиться ты не мог, потрудись приложить к нему лог isql с результатом команды "SHOW DOMAIN POS_INT" и твоей командой удаления.
Добавлено: 07 дек 2005, 14:22
Вадим Снопов
Dimitry Sibiryakov писал(а):Так-то лучше. Судя по "Column not found" ты пытаешься дропнуть что-то не то. Либо команду неправильно сформировал, либо в имени домена опечатался.
Прежде чем печатать гневный ответ, что ошибиться ты не мог, потрудись приложить к нему лог isql с результатом команды "SHOW DOMAIN POS_INT" и твоей командой удаления.
вот log:
Код: Выделить всё
SQL> show domains;
"POS_INT" AUTH_STRING
BOOLEAN COMMENT
DNS_TYPES NAME_PART
SQL> drop domain "POS-INT";
Statement failed, SQLCODE = -607
unsuccessful metadata update
-Column not found
SQL> show domains;
"POS_INT" AUTH_STRING
BOOLEAN COMMENT
DNS_TYPES NAME_PART
SQL> show domain "POS_INT";
There is no domain POS_INT in this database
SQL> drop domain "POS_INT";
Statement failed, SQLCODE = -607
unsuccessful metadata update
-Column not found
SQL>
Спасибо, что навел на мысль: домен создавал в соответствиями 3 диалекта в кавычках, а тут произошел глюк - кавычки дописались к имени.
Вопрос прежний - как избавиться?
Добавлено: 07 дек 2005, 14:54
Dimitry Sibiryakov
Вопрос прежний - как избавиться?
Варианты:
а) DROP DOMAIN ""POS_INT"";
b) IBExpert или какой другой тул;
c) DELETE FROM RDB$FIELDS WHERE RDB$FIELD_NAME='"POS_INT"'
Но возможен также вариант что среди букв POS_INT затесалась русская О, Р или Т так что можно для начала попробовать DROP DOMAIN <copy-paste из вывода>
Добавлено: 07 дек 2005, 14:59
Вадим Снопов
Dimitry Sibiryakov писал(а):Вопрос прежний - как избавиться?
Варианты:
а) DROP DOMAIN ""POS_INT"";
b) IBExpert или какой другой тул;
c) DELETE FROM RDB$FIELDS WHERE RDB$FIELD_NAME='"POS_INT"'
Thanks, помогло с) (a и b - нет).