В чём может быть проблема (FB2.0.1):
Есть таблица TAB1 с полем old_id, есть ХП PROC1 которая это поле юзает.
С клиента (fibplus) поочерёдно посылаем
drop procedure proc1;
commit;
alter table tab1 drop old_id;
commit;
первый комит проходит нормально, второй выдаёт:
This operation is not defined for system tables. unsuccessful metadata update. cannot delete.COLUMN OLD_ID. there are 1 dependencies.
Он не проходит даже после рестарта FB. Если посмотреть зависимости через IBE, то он указывает как раз на несуществующую PROC1...
Можно конечно пробовать вручную чистить системные таблицы, но наверно это не здорово. Спасает тока b/r.
Надо сказать, что перед этим в базе идёт большое измение метаданных, но TAB1 оно не касается - она только создаётся.
there are 1 dependencies
в общем-то сейчас это не сильно напрягает - просто странно...
а насчёт "недоговариваешь" - дык скажи об чём - я договорю )
"альтер пустым телом" - как дожен выглядеть?
вот нашёл в RDB$DEPENDENCIES запись
RDB$DEPENDENT_NAME = 'PROC1',
RDB$DEPENDED_ON_NAME = 'TAB1',
RDB$FIELD_NAME = 'OLD_ID',
хотя proc1 давно в базе нет
если её вручную потереть - большие грабли не всплывут?
а насчёт "недоговариваешь" - дык скажи об чём - я договорю )
"альтер пустым телом" - как дожен выглядеть?
вот нашёл в RDB$DEPENDENCIES запись
RDB$DEPENDENT_NAME = 'PROC1',
RDB$DEPENDED_ON_NAME = 'TAB1',
RDB$FIELD_NAME = 'OLD_ID',
хотя proc1 давно в базе нет
если её вручную потереть - большие грабли не всплывут?
Последний раз редактировалось sydenis 25 июн 2007, 19:15, всего редактировалось 1 раз.