原文:SQL GUID和自增列做主键的优缺点

我们公司的数据库全部是使用GUID做主键的,很多人习惯使用int做主键。所以呢,这里总结一下,将两种数据类型做主键进行一个比较。 使用INT做主键的优点: 需要很小的数据存储空间,仅仅需要 byte 。 insert和update操作时使用INT的性能比GUID好,所以使用int将会提高应用程序的性能。 index和Join 操作,int的性能最好。 容易记忆。 支持通过函数获取最新的值,如:Sc ...

2014-11-17 12:47 3 14590 推荐指数:

查看详情

GUID做主键真的合适吗

  在一个分布式环境中,我们习惯使用GUID做主键,来保证全局唯一,然后,GUID做主键真的合适吗?   其实GUID做主键本身没有问题,微软的很多项目自带DB都是使用GUID做主键的,显然,这样做是没有问题的。然而,SQL Server默认会将主键设置为聚集索引,使用GUID做聚集索引就有问题 ...

Tue Aug 27 07:24:00 CST 2019 1 1528
使用Guid做主键和int做主键性能比较

使用Guid做主键和int做主键性能比较 在数据库的设计中我们常常用Guid或int来做主键,根据所学的知识一直感觉int做主键效率要高,但没有做仔细的测试无法 说明道理。碰巧今天在数据库的优化过程中,遇到此问题,于是做了一下测试。 测试环境:   台式电脑 Pentiun(R ...

Fri Nov 11 23:23:00 CST 2016 2 4164
SQLSERVER如何使用递增排序的GUID做主键

场景: 产品表数据量较大想用Guid做表的主键,并在此字段上建立聚簇索引。 因为Guid是随机生成的,生成的值大小是不确定的,每次生成的数可能很大,也可能很小。这样会影响插入的效率 1.NEWSEQUENTIALID和newid()的区别 NEWSEQUENTIALID() 和 NEWID ...

Sun Dec 04 03:10:00 CST 2016 0 3028
【转】关于使用GUID和Identity做主键的一些思考

通常,给数据库中的表都添加一个“无意义”的主键,能够大大地简化程序的开发。这个主键用什么类型呢?其实各种类型,只要大小不超过900字节都可以,但我们最常面临 ...

Wed Mar 28 18:37:00 CST 2012 0 5147
自增主键与UUID的优缺点

自增主键 自增ID是在设计表时将id字段的值设置为自增的形式,这样当插入一行数据时无需指定id会自动根据前一字段的ID值+1进行填充。在MySQL数据库中,可通过sql语句AUTO_INCREMENT来对特定的字段启用自增赋值 使用自增ID作为主键,能够保证字段的原子性 ...

Thu Sep 12 00:04:00 CST 2019 0 886
浅析主键自增长的优缺点

主键应该怎样设计?目前主要用到的主键方案共三种 自动增长主键 手动增长主键 UNIQUEIDENTIFIER主键 1、先说自动增长主键,它的优点是简单,类型支持bigint.但是它有致命的弱点: 当我们需要在多个数据库间进行数据的复制时(SQL Server的数据分发、订阅机制允许 ...

Fri Jun 24 23:58:00 CST 2016 0 2124
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM