(我使用的是 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 到 SettingType.SettingTypeCategoryId)的最佳方法是什么?
我可以在 CustomSettingType 表中添加一个 SettingTypeCategoryId 并将 FK 组合到 CustomSettingTypeCategory 表中,但这种方法让我有点畏缩,因为它是多余的,你知道 CustomSetting 属于哪个类别,通过它与 SettingType 的 FK 关系,但除了使用触发器我看不到任何其他方式。