使用GUID作为SQL Server中的索引字段是否存在问题?

时间:2016-08-08 12:43:01

标签: sql-server guid

我已经阅读了很多文章,提到在SQL Server中使用guid作为聚簇索引(或主键)可能会导致性能问题。

但是,由于一些设计决策,我确实需要一个包含GUID的字段,用于一个表的每一行。

如果我将该表的主键定义为自动增量整数,并将GUID添加为索引的普通列,我是否会遇到与GUID作为主要类似的性能问题键?

编辑:作为旁注,我知道GUID作为主键是一个坏主意,我问我是否会遇到性能问题,如果我将其设置为索引(非群集)字段

1 个答案:

答案 0 :(得分:0)

您希望将哪种类型的索引用于GUID字段?集群?独特?如果只是唯一的,那么GUID将不会与任何其他唯一字段不同。你可以毫无疑问地使用它。 在聚集索引的情况下,它将影响性能。您可以使用Sequential GUID。它可以解决一些性能问题。在客户端生成GUID也可以提高性能。