Риск быть названным дураком, мне интересно, что вы думаете о поддержании отношений отношений в БД MS SQL.
Я перевожу систему в среду .NET из ASP. Это приносит с собой бизнес-объекты и другие методы многоуровневого кодирования, которые работают для отделения базы данных от пользователя / API. Новое приложение имеет определенный API над Entity Framework DAL.
База данных приложения в старой базе данных велика, и назначение некоторых таблиц будет изменено, чтобы начать содержать двоичные данные, в виде файлов и т. Д. Я стремлюсь разделить их на отдельные БД, чтобы упростить управление на клиентских сайтах, где дисковое пространство стоит дорого.
Есть ли какое-либо значение в сохранении ограничений отношений между таблицами?
Предположения:
- Код проверен
- В тех случаях, когда отношения важны, исполнение выполняется в рамках транзакции
- Доступ к БД осуществляется только через API, доступ третьих лиц не поддерживается.
Причины соблюдения ограничений:
- Обеспечивает структуру данных
- СОЕДИНЕНИЯ быстрее?
- Помощь в плане запросов?
Причины для удаления ограничений в новой версии .NET:
- Можно предположить, что логика API / BIZ будет управлять такими отношениями, как Parent / Child.
- Уменьшает возможность включения разделов БД в другие каталоги (система построена с использованием архитектуры Plug-in, большинство таблиц могут работать изолированно)
- Правильно ли я считаю, что SQL должен выполнять дополнительные проверки во время INSERT для ограничений, которые могут оказаться бесполезными, когда это управляет API над БД?
Я все равно задаю свой вопрос сообществу на случай, если я что-то упустил, или если это просто кошмар, ожидающий случиться ...
Большое спасибо,
Nathan