Доброе утро, в дизайне базы данных, у меня есть таблица (вызов TabA), которая может иметь отношения с четырьмя другими таблицами. В том смысле, что эта таблица может быть связана как с первой из четырех, так и со второй, а третья - с четвертой, но не может иметь связей с ними; или он может иметь один (с любой из таблиц) или две ссылки (всегда с двумя из них) и т. д.Проектирование таблиц Sql Server
Таблица TabA Я добавил четыре поля, которые относятся к четырем таблицам, которые могут быть «нулевыми», когда у них нет никакого соединения.
Удивление - это оптимальный дизайн (скажем, четыре поля в TabA), или вы можете сделать лучший дизайн для этого типа ситуации?
Большое спасибо за ваш ответ.
Дэйв
Не могли бы вы предоставить нам больше информации и примеры о ваших таблицах и полях внутри них. – Arun
Если я правильно понимаю, то то, что вы предложили, звучит правильно. Если у вас есть таблица с 4 отношениями к четырем отдельным таблицам, тогда у вас должно быть 4 столбца, каждый из которых имеет внешний ключ в соответствующей таблице. При необходимости вы можете управлять минимальным/максимальным количеством отношений с контрольными ограничениями (например, если «Столбец1» равен нулю, то «Столбец2» не должен быть нулевым). – GarethD
Тогда пример: http://i.imgur.com/gW8uRhD.jpg, где у меня есть отношения, но они могут даже не быть там; мой вопрос: дизайн лучше или, может быть, будет другой, где, возможно, у меня могут не быть четырех полей в таблице и, возможно, каким-то образом кодифицировать и упростить базу данных. еще раз спасибо –