ID См. Таблицу, а не столбец в таблице

Схема таблицы множественного голосования:Схема таблицы множественного голосованияСхема таблицы с одним голосованием:Схема таблицы с одним голосованием

За предприятия, продукты и комментарии можно голосовать. Для первого очевидного решения я решил создать ассоциативную сущность для каждого из отношений. Мы подумали, что, может быть, будет лучшее решение.

После обширных исследований и поиска решения я нашел концепцию второй схемы, которая состоит в том, чтобы иметь единую таблицу голосования со столбцом (Entity) для определения типа таблицы или таблицы, в которой используется идентификатор (EntityID). идентификатор таблицы, из которой он получен). Единственная проблема заключается в том, что между таблицей голосования и тремя организациями нет никакой связи. Есть ли способ для столбца сущности ссылаться на таблицу, а не на идентификатор таблицы?

Любые предложения о других конструктивных способах разработки схемы приветствуются.

2 ответа

Решение

Я думаю, что вы найдете этот ответ очень достаточным.

Почему вы не можете иметь внешний ключ в полиморфной ассоциации?

Здесь вы видите Полиморфную Ассоциацию. У него много решений, три из которых подробно описаны в данном посте.

Я бы посоветовал вам объединить таблицы Business, Product и Comment в одну таблицу с дополнительным столбцом для обозначения "Тип". Затем вы можете закрепить свои отношения с таблицей голосования.

Другие вопросы по тегам