【发布时间】:2014-04-23 17:42:48
【问题描述】:
我想创建一个用于创建学术考试的数据库应用程序。为简单起见,该数据库包含以下 3 个表。
问题:
- ProblemID(整数、身份、主键)
- 问题 (nvarchar)
- 解决方案 (nvarchar)
类别:
- CategoryID(整数、身份、主键)
- 类别 (nvarchar)
问题类别:
- CategoryID(整数,复合主键)
- ProblemID(整数,复合主键
每个问题都与至少一个类别和最多 5 个类别相关联。我的问题是如何确保此约束在数据库级别保持?
额外问题:
是否推荐以下设计替代上述设计?
问题:
- ProblemID(整数、身份、主键)
- 问题 (nvarchar)
- 解决方案 (nvarchar)
- CategoryID1(整数,非空)
- CategoryID2 (int, null)
- CategoryID3 (int, null)
- CategoryID4 (int, null)
- CategoryID5 (int, null)
类别:
- CategoryID(整数、身份、主键)
- 类别 (nvarchar)
【问题讨论】:
-
或者,你可以做一些事情along these lines。
标签: database-design relational-database