(我正在使用SQL Server 2008 R2,但我不确定这很重要)
如果我有以下“基础”表:
SettingTypeCategory
- SettingTypeCategoryId (PK)
- CategoryName
SettingType
- SettingTypeId (PK)
- SettingTypeCategoryId (FK)
- SettingName
我想创建多个“自定义”设置和类别,如下所示:
CustomSettingTypeCategory
- CustomSettingTypeCategoryId (PK)
- SettingTypeCategoryId (FK)
- CustomCategoryName
CustomSettingType
- CustomSettingTypeId (PK)
- CustomSettingTypeCategoryId (FK)
- SettingTypeId (FK)
- CustomSettingValue
编辑:
确保具有相同CustomSettingTypeCategoryId的所有CustomSettingType与CustomSettingTypeCategory.SettingTypeCategoryId具有相同的SettingTypeCategoryId(FK to SettingType.SettingTypeCategoryId)的最佳方法是什么?
我可以将一个SettingTypeCategoryId添加到CustomSettingType表中,并将一个组合的FK添加到CustomSettingTypeCategory表中,但这种方法让我有点畏缩,因为它是多余的,你知道CustomSetting属于哪个类别通过它与SettingType的FK关系,但其他比使用触发器我没有看到任何其他方法。