Порядок бэкап/рестор БД

Ремонт и восстановление баз данных InterBase, Firebird, Yaffil

Модераторы: kdv, Alexey Kovyazin

Ответить
SteelRat
Сообщения: 4
Зарегистрирован: 15 дек 2006, 10:19

Порядок бэкап/рестор БД

Сообщение SteelRat » 15 дек 2006, 10:36

Наступил на грабли:
Сделал таблицу t1 в БД (fb 1.5) затем сделал таблицу t2. Добавил в таблицу t1 вычисляемое поле из t2. IBExpert-ом делаю бацкап и рестор БД в другое место. Если есть галка "Коммит после восстановления каждой таблицы" то t1 НЕ восстанавливатся, т.к. t2 ещё не восстановлена. Если галку убрать, то база восстанавливается без проблем.
Вопрос: Есть ли способ изменить порядок бацкапа ? Или только путём удаления t1 и создания заново ? :cry:

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Re: Порядок бэкап/рестор БД

Сообщение WildSery » 15 дек 2006, 12:02

Не делать вычисляемых полей из других таблиц.

SteelRat
Сообщения: 4
Зарегистрирован: 15 дек 2006, 10:19

Сообщение SteelRat » 15 дек 2006, 13:43

Да вот тоже подумал - зачем ? Это выборка из баланса, движимого и недвижимого имущества, и прочее... В итоге перенес на клиента, типа надо - считай, не надо - не считай :)

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 15 дек 2006, 15:20

а еще есть join-ы...

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 15 дек 2006, 17:34

Если же позарез нужно какие-то агрегаты хранить в таблице (пересчёт долгий, или же характер вычислений "накопительный"), то ещё можно триггеры покурить, в настоящее, невычисляемое, поле.

SteelRat
Сообщения: 4
Зарегистрирован: 15 дек 2006, 10:19

Сообщение SteelRat » 21 дек 2006, 09:12

Да, нет сенкс 8) Сам виноват... Навешаю таких полей и FB начнёт тормозить. На сколько я понял вычисляемые поля применять надо аккуратно и без нУжды не сувать :wink:

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 21 дек 2006, 09:28

да не FB начнет тормозить, а модель такой выборки начнет тормозить, потому что она тормозная по определению. У тебя ж на выборку каждой записи из таблицы будет дергаться этот запрос.

Ответить