|
|
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Допстим есть такая примерная структура словами: Есть дом, в доме есть квартиры, в них комнаты , в комнатах жыльцы, в жыльцах спрятаны документы. Как лучше "ключевать" такую иерархию? автор ДОМ: Его ID квартира : ID квартиры, ID дома(её родителя) собственник : ID собственника, ID квартиры документ: ID документа, ID собственника (то есть каждый элемент содежит ID родителя, и свой ) а можно так: автор ДОМ: Его ID квартира : ID квартиры, ID дома(её родителя) собственник : ID собственника, ID квартиры, ID дома(её родителя) документ: ID документа, ID собственника, ID квартиры, ID дома(её родителя) здесь зная например, ID дома можно получить сразу все документы собственников без джоинов. Кто что-нибудъ из своего опыта подскажет + и - такого подхода? --------------------------------------------------------- SET @@verSION = 'Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Workgroup Edition on Windows NT 5.2 (Build 3790: Service Pack 1) ' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 15:11 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Erik_Kartmann, 2 вариант не столько страшен избыточностью, сколько возможностью противоречия данных, в общем, в данном моменте нарушение нормальных форм не оправдано я за первый вариант ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 15:27 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
номенклатура документов -- отдельная таблица (справочник) имхо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 16:16 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
В чем проблема с join? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 16:16 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
авторЕсть дом, в доме есть квартиры, в них комнаты , в комнатах жыльцы, в жыльцах ... документы.похоже на файловую структуру. документы это файлы, все остальное каталоги (имхо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 16:33 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Erik_KartmannКто что-нибудъ из своего опыта подскажет + и - такого подхода?А куда делись комнаты ? А как учитывается долевое участие ? P.S. IMHO, оба варианта сомнительны, но только не по причине якобы нарушения нормализации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 17:12 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
ChAErik_KartmannКто что-нибудъ из своего опыта подскажет + и - такого подхода?А куда делись комнаты ? А как учитывается долевое участие ? P.S. IMHO, оба варианта сомнительны, но только не по причине якобы нарушения нормализации. я опустил это, чтоб не усложнять тему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 20:14 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
nosovавторЕсть дом, в доме есть квартиры, в них комнаты , в комнатах жыльцы, в жыльцах ... документы.похоже на файловую структуру. документы это файлы, все остальное каталоги (имхо) В доме могут быть просто комнаты без квартир. а может быть, что и квартир с комнатами, и просто комнаты. То, как щяс это выглядит - ужасно. отдельная таблица для комнат в доме, и отдельная таблица для комнат в квартирах. они идентичны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 20:19 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Т.е. один и тот же объект на разных уровнях ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 20:22 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
astonВ чем проблема с join? кто-то считает, что это будит мегозапросом, лично перебирающим миллионы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 20:25 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Erik_KartmannastonВ чем проблема с join? кто-то считает, что это будит мегозапросом, лично перебирающим миллионы...пусть приведет доводы относительно обоих вариантов, примете решение: лично я, не против избыточности, но нужны обоснования ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 21:00 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Erik_KartmannChAА куда делись комнаты ? А как учитывается долевое участие ?я опустил это, чтоб не усложнять темуЗря. Потому что пустяковые, казалось бы, изменения могут подчас повлечь за собой серьёзную переделку. IMHO, здесь нет никакой иерархии. Навскидку можно выделить 3 явно самостоятельных сущности: владелец, объект владения и, наконец, документ на право владения, через который связаны первые 2 сущности. С первой и последней всё достаточно просто, только не надо забывать о том, документ отражает право владения на определённый момент. Наибольшая сложность как раз с объектом владения, так как там могут быть очень нетривиальные варианты. Т.е., это уже отдельная ветка, которую надо рассматривать отдельно. Т.е., идти ли по простейшему пути, типа (адрес, доля/комната) или выстраивать некую сложную схему. P.S. Соединения - стандартная операция в РМД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 22:45 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
ну с правами владения совмесным/на дом\на помещение и т.п. отдельная опера --------------------------------------------------------- SET @@verSION = 'Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Workgroup Edition on Windows NT 5.2 (Build 3790: Service Pack 1) ' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 23:28 |
|
||
|
Как лучше составить клчи ?
|
|||
|---|---|---|---|
|
#18+
Erik_Kartmannну с правами владения совмесным/на дом\на помещение и т.п. отдельная операНу вот, пустячок, "а лет потянет на пяток". Тут ещё и совместные права всплыли. Сразу возникает куча дополнительных вопросов. В общем, у Вас в предметке, по ходу, целый табун носится. И явно за рамками 2-х, рассматриваемых в первом топике, вариантов. Но в любом случае, есть владельцы, есть объекты владения и документы на право владения. И не важно, что каждый из них может представлять группу, добавятся лишь таблицы связи. Что-то вроде Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2009, 01:10 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=36242423&tid=1543042]: |
0ms |
get settings: |
10ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 344ms |

| 0 / 0 |
