Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.03.18;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.043 c
15-1171798982
Чапаев
2007-02-18 14:43
2007.03.18
что для вас иконка в трее (там где часы)?


6-1159949661
Nickla
2006-10-04 12:14
2007.03.18
VPN соединение в DELPHI


15-1172180926
IMHO
2007-02-23 00:48
2007.03.18
Еврокубковое позорище


3-1166797458
tytus
2006-12-22 17:24
2007.03.18
DOA 4.0.7 - Delphi7 - Oracle 10g Express Edition


2-1172051286
Дмитрий Белькевич
2007-02-21 12:48
2007.03.18
Как вставить html в буфер вместе с картинками?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский