Ну да.Это нарушает принципы проектирования баз данных.Почему бы просто не использовать A
?То есть вы всегда можете найти значение B
, используя JOIN
, поэтому ссылка на составной внешний ключ не нужна.Хранение значения B
в ссылочных таблицах является избыточным и неэффективным (занимает место как на страницах данных, так и на индексных страницах).
В некоторых случаях такой внешний ключ полезен ,Вы не предоставили достаточно информации, чтобы узнать, есть ли у вас такой случай.Таким образом, в качестве общего принципа дизайна это звучит неправильно.Могут быть исключения, поэтому это не всегда плохая идея.