Полиморфные внешние ключи: может ли внешний ключ ссылаться на несколько таблиц?
Концепция внешних ключей в реляционных базах данных обычно предполагает указание точной цели таблица, на которую должен указывать ссылочный столбец. Однако при работе с полиморфными ассоциациями, когда таблица имеет связь с несколькими другими таблицами в наборе, возникает вопрос: возможно ли иметь внешний ключ, который может ссылаться на любую из этих таблиц?
Ответ: Нет
И в MySQL, и в PostgreSQL ограничение внешнего ключа может ссылаться только на одну родительскую таблицу. Это ограничение обеспечивает целостность данных, поддерживая четкую связь между ссылающимися строками и строками, на которые ссылаются в родительской таблице.
Альтернативы для полиморфных ассоциаций
Поскольку внешний ключ не может напрямую указывают на несколько таблиц, для моделирования полиморфных ассоциаций необходимы альтернативные решения:
Дополнительные ресурсы
Для получения дополнительной информации о полиморфных ассоциациях и их решениях обратитесь к следующим ресурсы:
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3