Рекомендуемая структура базы данных NHibernate для иностранных ключей - PullRequest
1 голос
/ 22 августа 2011

Я занимаюсь разработкой приложения с использованием NH и Sql Server. я решил пойти с методом создания структуры базы данных себя тогда карта с NH потом.

При создании структуры базы данных мне нравится использовать внешние ключи для поддерживать ссылочную целостность. В тех случаях, когда есть один одна таблица отображения, которая может быть обнуляемой, я в прошлом создал фиктивная строка с нулевым идентификатором в таблице поиска. Причина, по которой я сделал это потому, что я видел, что запросы левого соединения не были такими исполнитель в виде полных объединений.

Я стремлюсь совершенствоваться и хочу получить совет, следует продолжить это снова с моей новой структурой базы данных, которая будет значит заставить NH игнорировать нулевые идентификаторы глобально при выборе как-то. я подозреваю, что это может быть чревато опасностью при использовании NH и, возможно, я лучше выбрать альтернативный маршрут с базой данных. любой совет очень признателен, спасибо.

1 Ответ

1 голос
/ 22 августа 2011

Причина, по которой я это сделал, заключается в том, что я видел, что запросы на левое соединение не были такими же эффективными, как полные объединения.требования и измерения, которые вы сделали.Но для простоты не стоит создавать искусственное значение 0 в столбце FK.Измерение, которое вы делали, могло больше не быть относительным, или, возможно, это не было узким местом с самого начала.Возможно, есть способ улучшить производительность левого соединения, поместив индекс в столбец FK.

Что нужно знать при сопоставлении один-к-одному в NHibernate, так это то, что отложенная загрузка для обнуляемых ассоциаций не поддерживается .Посмотрите на этот ответ для вариантов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...