Показать сообщение отдельно
  #4  
Старый 22.07.2012, 20:32
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Зависит от того, надо ли тебе отслеживать историю изменения тарифа.
Ну с таблицами Поставщики и Услуги все понятно. У них есть ID и разная информация. Теперь о таблице Тарифы. В простейшем случае, когда ничего отслеживать не надо, то достаточно иметь ссылки на соотв. поставщика и услугу. Ну и текущую цену. Если история изменения нужна, то еще надо добавить даты начала и окончания действия услуги. Для текущей стоимости дата окончания будет NULL - это надо учитывать и в программе (когда будешь вводить изменение в эту базу, новую цену, тебе надо будет "закрыть" текущую запись и добавить новую) и во всех запросах. Кстати, для разрешения конфликтов, когда по какой-то причине периоды пересекаются, неплохо бы ввести время внесения последних изменений (считаем, что запись с макс. временем обновления более правильная).
Ответить с цитированием