|
|
|
строение, квартиры, комнаты
|
|||
|---|---|---|---|
|
#18+
Возникла задача хранения данных сабжа в адресе. ничего лучше, чем как вот сейчас придумать не смог. примерное тз такое: есть адрес, в нём есть сооружения (таблица Liter), в сооружении есть помещения (Квартиры, гаражи) или комнаты. А помещения есть соответственно комнаты. пока придумал хранить это в одной таблице BASE. В Base есть ссылки на отдельные таблицы с названием сооружений. Но логика и целостность страдает замечательно. например можно хранить одну и ту же комнату в нескольких разных сооружениях одновременно + по Base.PK можно вытащить айдишник комнаты, сооружения или квартиры.. Так конечно на практике бывает, но хочется постабильнее придумать. --------------------------------------------------------- SET @@verSION = 'Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 6.0 (Build 6002: Service Pack 2) ' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2012, 14:15 |
|
||
|
строение, квартиры, комнаты
|
|||
|---|---|---|---|
|
#18+
Erik_Kartmann, А в чем смысл таблицы [Base]? Вы DWH или OLTP делаете? Хотите нормализованную структуру, вяжите последоваетльно: комнаты к квартирам, квартиры к строениям (сооружениям), строения к владениям (адресам)... Отдельная комната, в этой модели, представляется, как квартира, состоящая всего из одного помещения (комнаты)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2012, 17:44 |
|
||
|
строение, квартиры, комнаты
|
|||
|---|---|---|---|
|
#18+
Erik_Kartmann Возникла задача хранения данных сабжа в адресе.Огласите задачу: вставка, замена, запросы, приоритеты. Тогда можно будет говорить предметно, глядишь вы сами подберете подходящую структуру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2012, 18:15 |
|
||
|
строение, квартиры, комнаты
|
|||
|---|---|---|---|
|
#18+
та вот пытаюсь.. таблица BASE - я думал типа ОКАТО сделать допустим сооружение с id 1 в таблице BASE представлено, как 1 0 0 комната id 1 в сооружении id 1 1 0 1 , из этого можно вытащить BASE.ID и лепить к нему человека, например, или ещё что-нибудь. FK_Premises в BASE - ссылка на конкретный адрес Пока остановился на : такой структуре, тока связи не получается лепить к BASE. пишет нельзя из-за ограничения вот я подумал, может в таблице сооружений Liter сделать первичный ключ FK_Premises (adres) ID сооружения FK_помещения : 0 - просто поле, которое всегда ноль FK_комнаты :0 - такое же поле. с помощениями так же. хранить там FK_комнаты :0 и всё вместе это джойнить к BASE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.02.2012, 09:22 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=52&tid=1541817]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 315ms |

| 0 / 0 |
