В прототипе базы данных у меня есть набор полей (таких как имя, описание, статус), которые требуются в нескольких функционально разных таблицах.
Эти поля всегда имеют одинаковые функциональные возможности конечного пользователя для маркировки, отображения, поиска, фильтрации и т. д. Они не являются частью ограничения внешнего ключа. Как это должно быть смоделировано?
Могу предположить следующие варианты:
Каждая таблица получает все эти атрибуты. В таком случае, как бы вы их назвали? То же, в каждой таблице или с префиксом имени таблицы (например, usrName, prodName)
Переместите их в таблицу Attributes, добавьте внешний ключ в «основные» таблицы, ссылаясь на Attributes.PK.
Как и выше, но вместо внешнего ключа используйте Attributes.PK в качестве PK в соответствующей основной таблице.