Снижение энтропии. Уменьшите вероятность возникновения хаотических сценариев в базе данных.
У нас трудное время, так как он рассматривает все возможные варианты, поэтому, на мой взгляд, снижение энтропии является ключом к обслуживанию любой системы.
Когда мы, например, делаем предположение: у каждого заказа есть клиент, это допущение должно выполняться чем-то . В базах данных этим «чем-то» являются внешние ключи.
Я думаю, что это стоит компромисса в скорости разработки. Конечно, вы можете быстрее их кодировать, и, вероятно, поэтому некоторые люди их не используют. Лично я убил несколько часов с NHibernate и некоторым ограничением внешнего ключа, которое сердится, когда я выполняю какую-то операцию. ОДНАКО, я знаю, в чем проблема, так что это меньше проблем. Я использую обычные инструменты, и есть ресурсы, чтобы помочь мне обойти это, возможно, даже люди, чтобы помочь!
В качестве альтернативы можно разрешить попаданию ошибки в систему (и при наличии достаточного количества времени), когда внешний ключ не установлен и ваши данные становятся противоречивыми. Затем вы получите необычное сообщение об ошибке, расследование и «ОН». База данных прикручена. Теперь, сколько времени это займет, чтобы исправить?