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

Вниз

структура базы данных   Найти похожие ветки 

 
mezozoy   (2006-12-18 12:47) [0]

Помогите люди добрые! Не могу разобраться с структурой базы данных (IB 6юч). Есть таблица отношения тариф-пользователь (id, id_user, id_tarif, begin_date, end_date), где id_tarif-ключ  к таблицам тарификации. У каждой услуги структура таблицы тарифов разная. Поэтому я сделал 3 таблицы Tarif_*. (по числу предоставляемых услуг). Как мне теперь прицепить все эти таблицы к Id_tarif? Заранее спасибо.


 
clickmaker ©   (2006-12-18 12:56) [1]


> mezozoy   (18.12.06 12:47)

а насколько разные? Я бы слил общую часть в одну таблицу, а разницу представил бы в виде 3 таблиц-аппендиксов


 
mezozoy   (2006-12-18 13:01) [2]

Услуги - это кабельное телевидение, интернет, и домофоны. Телевидение и домофоны влепить в одну таблицу не вопрос т.к. там только абонентская плата и разовые платежи. А вот с net-ом проблема т.к. платежи зависят от трафика


 
Sergey13 ©   (2006-12-18 13:01) [3]

> У каждой услуги структура таблицы тарифов разная.

ИМХО - это как раз и есть главная ошибка.


 
Desdechado ©   (2006-12-18 13:02) [4]

зачем 3 таблицы?
Разница, как я понимаю, в схеме начисления (тарификации), а не в структуре.


 
clickmaker ©   (2006-12-18 13:04) [5]

ну я имею в виду примерно это:
t_tarif(id_tarif, tarif_type, ... общие поля для всех трех)
tarif_type - 1,2,3 соотв. телевидение, интернет, и домофоны
t_tarif_tv(id_tarif, ... специфика)
t_tarif_inet(id_tarif, ... специфика)
t_tarif_domofon(id_tarif, ... специфика)

руководствуясь tarif_type, данные подтягивать из одной из этих таблиц. Некий аналог объектной модели с наследованием, положеный на реляционный движок


 
mezozoy   (2006-12-18 13:13) [6]

Спасибо всем. Буду пробовать.


 
Sergey13 ©   (2006-12-18 13:17) [7]

> [5] clickmaker ©   (18.12.06 13:04)

Можно и немного по другому.
t_tarif(id_tarif, name)
specifik_type (id_spec, name)
detal_tarif(id_tarif,id_spec,value_spec)


 
mezozoy   (2006-12-18 13:19) [8]


> > У каждой услуги структура таблицы тарифов разная.
>
> ИМХО - это как раз и есть главная ошибка.
> <Цитата>

Поясни пожалуйста что ты имел в виду.


 
Sergey13 ©   (2006-12-18 13:25) [9]

> [8] mezozoy   (18.12.06 13:19)

То, что на новый тариф будешь еще одну таблицу заводить + программу переписывать. А это не есть гут.


 
mezozoy   (2006-12-18 13:35) [10]


> То, что на новый тариф будешь еще одну таблицу заводить
> + программу переписывать. А это не есть гут.

Я понимаю, что это далеко не гут. A какой выход?


 
Sergey13 ©   (2006-12-18 13:36) [11]

> [10] mezozoy   (18.12.06 13:35)

Я предложил вариант в
> [7] Sergey13 ©   (18.12.06 13:17)


 
mezozoy   (2006-12-18 13:39) [12]

Спасибо!!! Буду пробовать.


 
clickmaker ©   (2006-12-18 13:57) [13]


> [7] Sergey13 ©   (18.12.06 13:17)

ну это уже тянет на почти совсем универсальный вариант
t_class (class_id, ...)
t_object (object_id, class_id...
t_class_attributes(class_id, attribute_id, name, data_type)
t_object_attributes (object_id, attribute_id, value)

вопрос только, стоит ли игра свеч


 
Sergey13 ©   (2006-12-18 13:59) [14]

> вопрос только, стоит ли игра свеч

Ну это уж автору решать. Я думаю стоит.



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

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

Наверх




Память: 0.49 MB
Время: 0.047 c
8-1152851887
Узер
2006-07-14 08:38
2007.03.18
Звук


1-1169618297
Wahnsinng
2007-01-24 08:58
2007.03.18
OleObject.Document


11-1151130532
AndreyRus
2006-06-24 10:28
2007.03.18
InitCommonControls(Ex) &amp; Manifest XP


2-1172510528
Lonix
2007-02-26 20:22
2007.03.18
Почему выдает ошибку....


2-1172006483
Comp
2007-02-21 00:21
2007.03.18
Маленький простой вопрос - прокрутка формы