Ремонт и восстановление баз данных InterBase, Firebird, Yaffil
Модераторы: kdv, Alexey Kovyazin
-
cav
- Сообщения: 21
- Зарегистрирован: 18 май 2006, 13:25
Сообщение
cav » 21 сен 2006, 06:17
Имеется 2 процедуры T1 и T2 (база не моя) из T1 вызывается T2. Системой обновления была изменена T2. Проблемма в том что изменилось число входный и выходных параметров. T1 не менялась. В результате получился невостановимый backup. Разработчики базы сказали что в принцыпе T1 не используется и ее можно закоментировать. Операция ищменения тела процедуры не удалась
invalid request BRL at offset 116
Попытка удалить процедуру T1 тоже не удалась (drop procedure )
Что можно сделать еще для удаления ? T2 перекомпилируется без ошибок.
-
CyberMax
- Заслуженный разработчик
- Сообщения: 638
- Зарегистрирован: 31 янв 2006, 09:05
Сообщение
CyberMax » 21 сен 2006, 06:52
Проверь в IBExpert, может, кто еще использует T2. По идее перекомпиляция T1 (с закомментированным телом процедуры) должна была дать положительный результат.
-
cav
- Сообщения: 21
- Зарегистрирован: 18 май 2006, 13:25
Сообщение
cav » 21 сен 2006, 06:59
CyberMax писал(а):Проверь в IBExpert, может, кто еще использует T2. По идее перекомпиляция T1 (с закомментированным телом процедуры) должна была дать положительный результат.
Использует но там все нормально т.е. компиляция проходих успешно.
В общем плане выглядит так:
T2 используется T1 и Т3. T1 не используется больше нигде. (т.к. конечная на цепочке T1>T2)
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 21 сен 2006, 10:13
-
cav
- Сообщения: 21
- Зарегистрирован: 18 май 2006, 13:25
Сообщение
cav » 21 сен 2006, 11:05
СПАСИБО !!!! Помогло.
Забыл указать что сервер был IB 7.5 SP 1
-
wolverine
- Сообщения: 4
- Зарегистрирован: 29 мар 2005, 12:01
Сообщение
wolverine » 16 окт 2006, 17:13
Тоже не могу удалить процедуру.
FB1.5
пишу DROP PROCEDURE OS_ALL_COMPANY_OPERATIONS_2
в ответ получаю:
Из эксперта
Невозможно подтвердить транзакцию:
This operation is not defined for system tables.
unsuccessful metadata update.
cannot delete.
PROCEDURE OS_ALL_COMPANY_OPERATIONS_2.
there are 1 dependencies.
а из isql:
Statement failed, SQLCODE = -607
unsuccessful metadata update
-cannot delete
-PROCEDURE OS_ALL_COMPANY_OPERATIONS_2
-there are 1 dependencies
Как удалить?? Выше описанный метод пробывал не помогло.
-
Merlin
- Динозавр IB/FB
- Сообщения: 1502
- Зарегистрирован: 27 окт 2004, 11:44
Сообщение
Merlin » 16 окт 2006, 20:05
Вместо того, чтоб "пробывать" всяку хаку, предназначенную для выбраться из угла, в который сам себя загнал, в данной совершенно рутинной рабочей ситуации надо просто посмотреть зависимости (какая процедура, триггер или не дай бог computed column или чек к ней обращается) и убрать оттуда это обращение.