mssql sqlserver 数据库主键设计字段类型选用情况(guid int)


摘要:
下文讲述sqlserver中数据主键设计时,字段类型选择方法,如下所示:
实验环境:sql server 2008 R2


在数据库的设计时候,我们常常在主键的选择上,纠结选择guid还是Int类型,下文将从两种类型上依次讲述各自的优点和缺点,如下所示:

INT数据类型作为主键的优缺点:

int作为主键优点如下:
1.int类型在数据库中占用空间更小,为4byte
2.int类型在更新、插入、查询上速度会快一些

int 类型作为主键的缺点:
1. 数据库合并时,会出现重复键
2.int数据类型存在最大值的限制

GUID数据类型作为主键的优缺点:

GUID主键的优点:
1.此数据类型独一无二
2.基本上无重复数据
3.易于合并数据库
4. 插入数据库时,可以直接由程序生成主键ID
GUID主键的缺点:
1.占用存储空间大
2.join操作效率低下
3.数据 操作的效率没有Int高