sql-server-2008 – SQL GUID Vs Integer

前端之家收集整理的这篇文章主要介绍了sql-server-2008 – SQL GUID Vs Integer前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近开始了一个新工作,并注意到所有的sql表都使用GUID数据类型作为主键.

在我以前的工作中,我们使用整数(自动增量)作为主键,在我看来更容易处理.

例如,说你有两个相关的表;产品和产品类型 – 我可以轻松地查看特定行的两个表的“ProductTypeID”列,以快速映射数据,因为它容易存储数字(2,4,45等),而不是(E75B92A3- 3299-4407-A913-C5CA196B3CAB).

额外的挫折来自我想要了解表的相关性,可悲的是没有数据库图:(

很多人都说GUID更好,因为您可以在C#代码中定义唯一的标识符,例如使用NewID(),而不需要sql SERVER来执行此操作 – 这也允许您暂时了解ID将是什么….但是我看到有可能仍然可以检索“下一个自动递增的整数”.

DBA承包商报告说,如果我们使用整数类型而不是GUIDS,我们的查询可能会提高30%

为什么GUID数据类型存在,它真正提供了哪些优点?即使是某些专业人士的选择,为什么要实现这一点呢?

解决方法

在某些情况下,GUID作为身份字段很好:

>当有多个sql(不同的服务器)实例时,您需要稍后组合不同的更新而不影响参照完整性
>断开创建数据的客户端 – 这样他们可以创建数据,而不用担心ID字段已被占用

生成GUID是全局唯一的,这就是为什么它们适合于这种场景.

原文链接:https://www.f2er.com/mssql/83171.html

猜你在找的MsSQL相关文章