В письме от Tue, 27 Sep 2011 17:26:15 +0400, Андрей Кручинин
<an...@bk.ru> сообщал:
Ну я так и хотел, но есть засада типа - кода то достаточно. И указаний
тех же таблиц много.
ну так если дублировать (вернее даже две с половиной копии делать) всю БД,
то это много места на диске займёт, а его ты вроде писал тоже не хватает.
но - заменять код нужно будет только в месте подключения (другая сторка
коннекта) или даже только менять алиас на сервере (но тогдавсех
пользователей надо единомоментно переключать. Или алиасы делать со
сквозной нумерацией), остальной код и не должен заметить, что ему
подсунули что-то другое - базы кроме аналтики одинаковые.
Идеальный вариант был бы со вьюхой, но сомнения гложут. Думать надо и
пробовать.
Тут кто-то кажется предлагал в таблицу добавить столбец "версия аналитики"
А что если это объединить
Сделать вьюху типа select 1 as magic, то что надо from table1 union select
2 as magic, то что надо from table2
и таблицу на одну единственную строку и столбец - с номером актуальной
таблицы
и ещё одну вьюху select всё-кроме-magic from view1 where view1.magic =
rdb$database.magic
залил новые данные, изменил номер актуальной, подождал пока отвалятся
транзакции, читающие со старой (или помог им отвалиться как-нибудь),
зачистил таблицу, как Влад писал - пусть это и займёт пару часов, по
приходу свежие данные залили и опять поменял флажок. И вроде меаданные
трогать не надо. Надеюсь в таком случае оптимизатор поймёт, что в каждый
момент выборка делается только по одной из таблиц, а не будет читать все
таблицы и отбрасывать уже потом ?
--
Написано в почтовом клиенте браузера Opera: http://www.opera.com/mail/