【发布时间】:2016-03-01 05:55:19
【问题描述】:
您将如何修复现有的年份数据库,该数据库使用来自字段学校和年份的复合键不再代表唯一行?其中一所学校正在发行一年两次的年鉴。我应该只生成一个 id 并将其用作主键吗?
【问题讨论】:
-
听起来你需要一个
semester或term字段。您可以只创建一个代理键,但在报告时,如果没有有意义的术语/学期字段,您将没有一个好的业务规则来知道要引用哪些记录。 -
哇哦,说的有道理,就形成一个3个字段的组合键?
-
没错,键中的另一个字段,但让您可以灵活地处理此问题,而不会破坏您的大脑以尝试稍后使用数据。
-
听起来不错,如何将评论标记为答案?
-
我想我会回答的。
标签: sql primary-key composite-key