我对最佳实践以及数据库引擎的工作方式存有疑问.
假设我创建了一个名为Employee的表,其中包含以下列:
事情是..我看到很多数据库都有它的所有表格,aditional列叫做ID,这是一个序列号.我应该把ID字段放在我的桌子上吗?我的意思是,它已经有一个要编制索引的主键.使用顺序ID字段,数据库是否可以更快地运行?我不知道如果我不使用它来链接或研究任何表格它会有什么帮助.
这有帮助吗?如果是这样,为什么,数据库中会发生什么?
谢谢!
编辑-----这只是一个愚蠢的例子.忘记SS_ID,我知道有更好的方法来选择主键.主要的主题是因为我认识的一些人只是要求我添加名为ID的列,即使我知道我们不会将它用于任何SQL查询.他们只是认为它以某种方式帮助数据库的性能,特别是因为像Microsoft Access这样的一些数据库工具总是问我们是否希望它添加这个新列.
这是错的,对吧?
如果SS意味着"社会保障",我强烈建议不要将其用作PK.自动递增的身份是要走的路.
使用内置业务逻辑的密钥是个坏主意.许多人对提供SS信息非常敏感.如果他们使用SS作为主键,您的应用可能会消除部分受众群体.像HIPPA这样的法律可以让你无法使用.