我正在合作的团队决定创建一个带有 varchar 主键的表。该表被该主键上的另一个表引用。
我有按照我在大学学到的知识创建整数主键的习惯。我读到使用整数主键可以提高性能。
问题是我不知道创建整数主键的任何其他原因。你有什么建议吗?
主键应该代表行的标识,并且不应该随着时间的推移而改变。
我假设 varchar 是某种自然键 - 例如实体的名称、电子邮件地址或序列号。如果您使用自然键,那么有时可能会发生该键需要更改的情况,因为例如:
- 数据输入不正确,需要修复。
- 用户更改姓名或电子邮件地址。
- 管理层突然决定必须将所有客户参考号更改为另一种格式,其原因对您来说似乎完全不合逻辑,但即使在您解释了这将给您带来的问题之后,他们仍然坚持进行更改。
- 也许甚至一个国家或州决定改变其名称的拼写——可能性很小,但并非不可能。
通过使用代理键,您可以避免因必须更改主键而引起的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)