Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.21;
Скачать: CL | DM;

Вниз

Как лучше построить таблицу?   Найти похожие ветки 

 
Andrio ©   (2003-04-03 12:24) [0]

Уважаемые мастера!
Есть таблица "Лицевые_Счета".
Каждый месяц на каждый лицевой счет производится начисление определенной суммы.
Эти начисления записываются в отдельную таблицу "Начисления"
Но как лучше сделать? :
а) Для каждого нового месяца создавать новую таблицу "Начисления"
(Например: "Начисления_YYYY_MM")
б) Начисления всех месяцев писать в одну таблицу. (В этом случае первичный ключ увеличивается на 1 поле - "Дата начисления")

В реальной БД работа будет происходить только с 1 месяцем, остальные будут только как архив, и совсем старые будут удаляться.

Какой способ лучше с т.з. клиента (скорости доступа, безопасности хранения и по другим характеристикам), но не с точки зрения программиста.

Заранее благодарен.


 
Mike_Goblin ©   (2003-04-03 12:49) [1]

На мой взгляд лучше

>б) Начисления всех месяцев писать в одну таблицу. (В этом >случае первичный ключ увеличивается на 1 поле - "Дата >начисления")
Так как часто клиент просит а вот скажите какие начисления были
12, 15, 17 этого месяца и 1 прошлого и за период с 1.03.2001 по 19.07.2001, при этом лазить по многим таблицам не удобно
Первичный ключ не увеличится, если использовать GEN_ID
Так же для архивации введите флаг - и сделайте View всех неархивных начислений

>Какой способ лучше с т.з. клиента
Это надо спрашивать у клиента :)



 
Johnmen ©   (2003-04-03 13:01) [2]

пункт б)
"Дата начисления" вообще не должна входить в PK. Скорее всего UNIQUE INDEX.
Как сказал Mike_Goblin © - введение флага.

>Какой способ лучше с т.з. клиента (скорости доступа,
>безопасности хранения и по другим характеристикам), но не с
>точки зрения программиста.

Иди на клиентский сайт, там т.з.и узнаешь :)
А здесь сплошь программеры :)))))))



 
vopros ©   (2003-04-03 13:42) [3]

Я уже намучился с таких подходом одного умника.Даже в пьяном угаре не придумал бы более зловещей постановки вопроса.
а) Для каждого нового месяца создавать новую таблицу "Начисления"
(Например: "Начисления_YYYY_MM")


 
Tomkat ©   (2003-04-03 15:06) [4]

на мой взгляд , лучше всего делать 2 таблицы - счета (ACCOUNTS) и начисления на них (OPERS)
ACCOUNTS
ID - идетнификатор счета
...
....
.....
OPERS
ID - идентификатор операции
ID_AC - идентификатор счета, на к-й производятся начисления
DATA
SUMMA
...
....
Связать OPERS.ID_AC > ACCOUNTS.ID в отношении "много к одному"
там много раз делал , работает :-)))



Страницы: 1 вся ветка

Текущий архив: 2003.04.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
3-67186
Roka
2003-04-01 23:06
2003.04.21
select из одной базы в другую


1-67319
Lexer
2003-04-09 11:29
2003.04.21
Нужен компонент DBGrid + DBTreeView


1-67229
Hexxx
2003-04-10 23:31
2003.04.21
Тяжелый Record.


1-67298
Имран
2003-04-11 18:25
2003.04.21
Как поочереди открывать текстовый файл в переменную?


3-67155
denis24
2003-04-02 11:50
2003.04.21
грид+query