LINUX.ORG.RU

Связь таблиц многие ко многим


0

0

Как её сделать лучше? Может кто доку подкинет?

Я делаю так:

Таблица1 _________________________________ | id | Name1 | Name2 | Name 3| --------------------------------- | 1 | Вася | Калинин| Ученик| --------------------------------- | 2 | Петя | Ревякин| Ученик| --------------------------------- | 3 | Вова | Кузин| Ученик|

Таблица 2 __________________________________ | id | Name1 | Name2 | Name 3| ---------------------------------- | 1 | Лена | Морозова| Ученик| ---------------------------------- | 2 | Инна | Нужина| Ученик| ---------------------------------- | 3 | Кира | Лихачёва| Ученик|

Таблица 3 _____________________ | id | Id1 | Id2 | --------------------- | 1 | 1 | 2 | --------------------- | 2 | 1 | 3 | --------------------- | 3 | 2 | 1 | --------------------- | 4 | 2 | 3 | --------------------- | 5 | 3 | 1 |

создаю 3 таблицы: в двух индефикационные номеры и имена, а в третьей оба индефикационных номера.

получается что когда в 1 таблице выбираешь запись, то во 3 выводятся записи, в которых один индификациный номер такой же какой в 1 таблице

ВОТ тут и начинается сложность: в С++ Buildere добавляю к третьей таблице столбец с именами из второй таблицы (у которых ИН совпадает с ИН в третьей).

а как сделать то же JBuildere?

Хотя лучше вывести 2 таблицу в которой отображаются записи с совпадающим ИН из третьей - НО КАК? Ведь в 3 таблице несколько записей и отображается только 1 из второй.


Тьфу наглядно таблицы не получились. Но вопрос остаётся.

IvanK
() автор топика

Связь "многие ко многим" - Большая Ошибка Природы.

Забудь как страшный сон саму идею делать такие связи. Альтернатива - позабудь о
реляционной теории.

Короче, если ты пыжишься чой-то породить в рамках реляционной модели. то ТАМ
ТАКИХ СВЯЗЕЙ НЕТ!!!

А ежели ты ее а-ля M$ расширяешь, то - делай, как душа тебе шпчет - один хрен,
ничего не получится!


Die-Hard ★★★★★
()
Ответ на: комментарий от Die-Hard

уважаемый Die-Hard. ПОЖАЛУЙСТА. Разверните ответ и киньте пару ссылок (в базах - нуль, не хотелось бы начинать с г...а, и переучиваться).

anonymous
()

Насколько я знаю, связь многие ко многим может быть заменена дополнительной сущностью и двумя связями 1:N

OgreSwamp
()
Ответ на: комментарий от OgreSwamp

Что такое дополнительная сущность?

anonymous
()

для начала читать теории баз данных и их приведение
в инете просто нету этой доки
как вариант могу посоветовать
Теория баз данных , Дэйт
сейчас вроде 6-ое издание
стоит не дорого очень поучительно.

Aleks_IZA
()

Knigi

2IvanK (*) (2002-09-07 20:24:56.801):

www.emanual.ru

poischi tam - mozhet, najd'osh chego...

anonymous
()

Я бы посоветовал начать с лекций по базам данных Сергея Дмитриевича Кузнецова они есть на www.citforum.ru в них есть все основные понятия.

master
()

DIE-HARD, Вы - двоечник. Не нужно путать людей.

IvanK читай теорию. Ogre все правильно сказал.

nicko
()

Сказанное Die-Hard не противоречит сказанному OgreSwamp :)))

hbee ★★★★
()
Ответ на: комментарий от nicko

2nicko (*) (2002-09-10 13:42:47.517):
Проехали уже - неделю был оторван от мира... Ладно, хоть с запозданием:

Связь N:N - вещь, которую ОЧЕНЬ любят новички, ваяющие на Акцессовском
Базике. Как правило, они доводят проект до состояния "задышало", после
чего переключаются на новый. А последователям оказывается легче
перепроектировать базу с нуля, чем разгрести наследство со связями N:N.

Интересно, какая нормальая форма допускает такие связи?

Die-Hard ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.