У меня возникли некоторые проблемы в структуре сущностей из-за наследования.
Итак, у меня есть что-то вроде этой базы данных:
PROFILE
Id int identity [PK]
ProfileTypeId int [FK] [PK]
PROFILETYPE
Id int [PK]
COMPANY
ProfileId int [FK] [PK]
ProfileTypeId AS 1 PERSISTED [FK] [PK]
PERSON
ProfileId int [FK] [PK]
ProfileTypeId AS 2 PERSISTED [FK] [PK]
Я хочу реализовать наследование, ПРОФИЛЬ может быть КОМПАНИЕЙ или ЛИЦОМ, и он является эксклюзивным, поэтому FK в КОМПАНИИ - это ProfileId и ProfileTypeId для PROFILE, чтобы сделать его эксклюзивным.
Но когда я пытаюсь создать компанию в рамках сущности, это нарушает ФК в ПРОФИЛЕ к ПРОФИЛЕ. Возможно, потому что в КОМПАНИИ сохраняется ProfileTypeId, он не заполняет значение в ПРОФИЛЕ, кто-нибудь знает обходной путь, чтобы заставить его работать с структурой сущностей?
Спасибо!