Например, для создания иерархии категорий вы используете столбец "parent_id", который указывает на другую категорию в той же таблице.
Если это внешний ключ? Какими будут преимущества/преимущества?
Например, для создания иерархии категорий вы используете столбец "parent_id", который указывает на другую категорию в той же таблице.
Если это внешний ключ? Какими будут преимущества/преимущества?
Да. Убедитесь, что у вас нет сироты (запись без родителя), и в зависимости от использования, если вы определяете каскадное удаление, когда родитель удален, все его дети также будут удалены.
Недостатком может быть небольшое поражение производительности, как и любой другой внешний ключ.
Да, вам нужно. Если у вас есть атрибут в отношении базы данных, который служит в качестве первичного ключа другого отношения в той же базе данных, вы должны сделать его FK.
Вам понравятся преимущества, связанные с внешними ключами:
Недостатки:
Да, вы должны.
Преимущества (как для любого внешнего ключа):
Я не могу представить никаких реальных недостатков.
Да, вы должны сделать его внешним ключом.
Преимущества будут лучшей моделью данных с меньшей избыточностью.