Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Столбцы в таблице не совпадают с существующим первичным ключом или ограничением UNIQUE

Илья Житнев Знаток (349), на голосовании 6 лет назад
Хочу сделать связь между таблицами многие ко многим, столбцы одинаковы, но выбивает ошибку.
Голосование за лучший ответ
Дед Мазай Гений (58137) 6 лет назад
Внешний ключ может ссылаться только на первичный или уникальный ключ. Это и написано в сообщении об ошибке.
В реляционных БД нет связей многие-ко-многим. Изучай теорию.
Chrono Профи (803) 6 лет назад
Связь многие ко многим бессмысленна, общая идея связей в обеспечении целостности данных, например, у нас есть таблица пользователей с их номером и таблица, например, история баланса этих пользователей. В данной ситуации можно сделать связку один (пользователь) ко многим ( движение денег по балансу (история баланса)) , чтобы ГАРАНТИРОВАТЬ что при вставке очередной записи в таблицу история баланса пользователь который указывается в новой вставляемой строке, существует в таблице пользователей. Если так же попытаться обновить какую-то запись на левого пользователя ( который не заведен в системе) база не даст этого сделать, т. е. это защищает нас от вакханалии данных, когда не то обновилось и деньги с баланса исчезли, например.

В Целом иногда возникает необходимость сделать связь многие ко многим, как правило это делается через промежуточные таблицы и в результате получается отношения двух таблиц (табл А и табл Б) многие ко многим через временную таблицу ( к которой уже идут один ко многим табл А ко временной как один ко многим и таблица Б к временной как один ко многим)
Похожие вопросы