Как обрабатывать отношения «ИЛИ» в дизайне ERD (таблицы)?
я создаю небольшую базу данных для личного проекта и одну из таблиц, назовем ее таблицейC
, должен иметь внешний ключ к одной из двух таблиц, вызвать ихA
а такжеB
, отличаясь по записи. Какие'лучший способ реализовать это?
Идеи пока что:
Создайте таблицу с двумя обнуляемыми полями внешнего ключа, соединяющими две таблицы.Возможно, с триггером для отклонения вставок и обновлений, в результате чего 0 или 2 из них будут нулевыми.Две отдельные таблицы с одинаковыми даннымиЭто нарушает правило о дублировании данных.Какие'более элегантный способ решения этой проблемы?