如何解决Guid vs INT - 哪个更好作为主键?
GUID 优点
- 每个表、每个数据库和每个服务器都是唯一的
- 允许轻松合并来自不同数据库的记录
- 允许跨多个服务器轻松分布数据库
- 您可以在任何地方生成 ID,而不必往返于数据库,除非需要部分顺序(即使用
newsequentialid()
)- 大多数复制方案无论如何都需要 GUID 列
GUID 缺点
如果您确定性能并且不打算复制或合并记录,请使用int
,并将其设置为自动增量(sql Server 中的标识种子)。
解决方法
我一直在阅读使用或不使用Guid
和int
.
int
更小,更快,易于记忆,保持时间顺序。至于Guid
,我发现的唯一优势是它是独一无二的。在哪种情况下 aGuid
会比 a 更好int
,为什么?
从我所见,int
除了数量限制之外没有任何缺陷,这在许多情况下是无关紧要的。
究竟为何而Guid
生?我实际上认为它除了作为简单表的主键之外还有其他用途。(有什么真正的应用程序使用Guid
的例子吗?)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。