【发布时间】:2017-10-03 10:28:20
【问题描述】:
我曾经创建一个名为“id”的列,它在我创建的任何表中都会自动递增。虽然在某些情况下我发现该列是无用的,而像 'citizen_ssn' 之类的另一列更适合作为主键。
那么,选择表的主键的最佳做法是什么? 我应该使用适合需要的内容还是创建自动增加的列或其他意见?
【问题讨论】:
-
在我看来,这取决于你想如何控制重复的公民,如果你想通过代码控制它另一方面最好自动递增如果你更喜欢数据库控制它,你应该使用 PK在citizen_ssn中
-
建议您为 ID 使用专用列,该列的值将保持不变。如果
citizen_ssn是用户提供的或可能以其他方式更改,则将其用作主键不是一个好主意。