Я разрабатываю базу данных SQL Server 2005 для банка, в котором будут храниться записи, относящиеся к клиентам (родительская таблица) и их портфелям (дочерняя таблица), причем каждый клиент имеет несколько портфелей.Таблицы на данный момент:
Client (Client_Number PK ...)
Portfolio (Portfolio_ID PK, Client_Number FK ...)
Мне нужно включить таблицу для хранения записей для связанных сторонних организаций (например, управляющего фондом, администратора, организатора и т. Д.).Третьи стороны не определены и подлежат изменению, как и типы отношений.Отношения, очевидно, многие-ко-многим, поэтому я подумал о дополнительных таблицах следующим образом:
Third_Party (Third_Party_ID PK, Third_Party_Name ...)
Relationship (Relationship_ID PK, Third_Party_ID FK, Client_Number FK ...)
Это будет работать нормально, но третьи стороны могут быть связаны с Портфелями (дочерней таблицей), а такжеКлиенты (родительская таблица).
Например, у Клиента 1 есть Портфель 1 и Портфель 2. Клиент 1 и Портфель 1 связаны с Организатором 1, а Портфель 2 связан с другим Организатором.
Любая идея относительно наилучшей практики для дизайна таблицы для вышеуказанной ситуации?
Заранее спасибо.