![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Посоветуйте з архивированием [D6, D7, IB4.x, IB5.x, IB6.x]
Carmen © (2003-04-17 22:48:00)Пишу сейчас прогу для работы с населением за использованую електроенергию. За год в базу на FB добавляется минимум в одну таблицу более 500000 записей, в другую около 300000 записей. Проблема в том, чтобы както сделать архивирование данных срок которых более 3 лет, но с возможностью из просмотреть в любой момент. Может как то подругому организовать структуру базы (сейчас все года хранятся в одной базе: вся оплата в ENERGO, обходы в OBHODY). Може оплату за 2002 год хранить в таблице ENERGO_2002 и т.д. Но при таком методе усложняются SQL запросы. Посоветуйте кто, что может.
Заранее благодарен
Anatoly Podgoretsky (2003-04-18 10:19:00) [1]Разделение на таблицы скажется в сторону ухудшения, разделение на базы даже и обсуждать не стоит.
samalex (2003-04-18 09:58:00) [2]Я ы все хранил в одной таблице и старые и новые данные. Вряд ли это скажется на скорости работы программы, существуют индексы. Ну а выборка - "select ... where date > ...". У меня в SQL Server хранятся данные за 20 лет и все в одной таблице...
Sergey13 (2003-04-18 09:29:00) [3]2Carmen (17.04.03 22:48)
Две таблицы. Опреативное состояние и архивная. Перенос по отдельной кнопке 8-). Плюс вьюшка с юнионом. При запросе с учетом архивных данных вместо таблицы подставь вьюшку и все дела.
2Карелин Артем © (18.04.03 06:33)
>Надо глянуть - беру из архива и вставляю обратно в базу.
Странный подход. (это я мягко выразился)
ЮЮ (2003-04-18 08:41:00) [4]"возможность просмотреть в любой момент" замени на "возможность просмотреть в нужныймомент" и в этих местах "удвоишь" запросы:
SELECT ... FROM ... ENERGO_2002...
UNION
SELECT ... FROM ... ENERGO_ARCH...
Carmen (2003-04-18 08:23:00) [5]Знаете сколько времены уйдет на обратную вставку. Этот вариант не подходит
Карелин Артем (2003-04-18 06:33:00) [6]У меня для этих дел есть поле с датой внесения(измененения) записи. Надо архивировать - делаю простую выборку по дате, пихаю в архив, удаляю. Надо глянуть - беру из архива и вставляю обратно в базу.