Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Вниз

Связь многие ко многим ;) 


MVova   (2001-12-04 10:41) [0]

Кто знает каким способом лучше организовали связь многие ко многим для больших баз???



Val   (2001-12-04 10:46) [1]

кто организовал? ;)
по сути вопроса-вообще делают таблицу развязки между таблицами со связью многие-ко-многим, чтобы были связи один-ко-многим



MVova   (2001-12-04 13:24) [2]

А без третей таблици можна?
У меня есть несколько идей но как будет быстрее?
1. Дублировать записи в детальной таблице но показывать клиенту одну.
2. В поле связи писать через запятую ID мастаров и при выборке искать вхождение.
Поле ID у меня VarChar(16).



Val   (2001-12-04 13:33) [3]

в принципе можно, конечно..
1 вариант - а как же насчет нормализации?
2 вариант - по идее, отпадает напрочь, поскольку неизвестно заранее, сколько их будет
и при связи многие-ко-многим у вас таблица и мастер и дитейл, смотря с какой стороны смотреть :)



Yuvich   (2001-12-04 13:35) [4]

>MVova
Можно все. Но это нарушение всех правил реляционной модели. Таким образом ты "привяжешь" себя к системе потому что никто с эти работать не то чтобы не захочет - не сможет. Используй третью таблицу.



MVova   (2001-12-04 14:11) [5]

> Val
2 вариант - по идее, отпадает напрочь, поскольку неизвестно заранее, сколько их будет
Поле связи типа Char а там 8000 накладывает ограничения но в принципе хватит ;)
>Yuvich
Но это нарушение всех правил реляционной модели.
А скорость. Как быстреее лазить по двум таблицам или по трем?



Desdechado   (2001-12-04 15:42) [6]

2 MVova
речь идет о скорости выборки? так количество таблиц особой роли не играет, зато играет роль объем перебираемых при этом данных. Если все нормализовано и построены индексы - это быстро, если ненормализовано - медленно (обрабатываются дубликаты).
учитывать надо еще и объем извлекаемых данных, т.к. это сказывается на скорости передачи, особенно на модемных каналах.

так что, рекомендую классику - 3-ю таблицу перекрестных ссылок.




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.117 c
1-22100           Avol                  2001-12-15 18:29  2002.01.08  
Как в Delphi сделать таблицу рекордов для игры?


6-22311           BigFoot               2001-10-04 19:27  2002.01.08  
Удалённо


1-22177           Corte                 2001-12-21 09:38  2002.01.08  
Почему не работют бряки в


1-22249           Eugene Zelikovsky     2001-12-17 13:53  2002.01.08  
Как обождать какое-то время не используя TTimer


1-22163           Марина                2001-12-20 16:29  2002.01.08  
Названия месяцев