选项A:
表A:
表B:
表C:
表D:
- TableA_ID (FK, int)
- TableB_ID (FK, int)
- TableC_ID (FK, int) (可空)
组合键 (TableA_ID,TableB_ID,TableC_ID)
我正在考虑将 TableD 设计如下(OptionB)
表D:
- TableA_ID (FK, int)
- TableB_ID (FK, int)
- TableC_ID (varchar(max) ) (Nullable) 并删除组合键。因此,TableC_ID 列将具有以下内容:{1,2,3,4,....}
我的应用程序将需要使用 TableD 作为搜索 TableB_ID 和/或 TableC_ID 列中的值,方法是提供 TableA_ID 中的值的键。
我只是想知道哪个选项会更好的性能。