Home
Top.Mail.Ru Yandeks.Metrika
Forum: "Bases";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Down

Connection many to many;) Find similar branches


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-ю таблицу перекрестных ссылок.



Pages: 1 whole branch

Forum: "Bases";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Top















Memory: 0.83 MB
Time: 0.159 c
4-22489
Skiv
2001-11-05 09:55
2002.01.08
Display version * .exe


6-22316
dmur
2001-09-24 20:58
2002.01.08
Interception of errors when connecting using sockets


1-22115
Derzky
2001-12-19 18:14
2002.01.08
How to compare dates and the difference between them to get an integer


14-22377
sudiv
2001-11-08 10:54
2002.01.08
C ++?


1-22083
Dennis
2001-12-19 12:06
2002.01.08
Help me please!





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 Español 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
English French German Italian Portuguese Russian Spanish