0

使用的数据库是 Microsoft SQL Server 2008。

当我在列上创建 UNIQUE 约束时,将创建自动索引还是手动为该列创建索引?

来自http://msdn.microsoft.com/en-us/library/ms175132(v=sql.105).aspx的以下段落

创建 UNIQUE 约束时,默认情况下会创建唯一非聚集索引以强制执行 UNIQUE 约束

所以这意味着至少创建了一些索引(不确定什么是非聚集的)。请纠正我的理解。

4

1 回答 1

1

是的,UNIQUE 约束是一个逻辑概念,对于 SQL Server(和大多数 DBMS 系统)来说,它还涉及创建物理索引来强制执行它。

否则维护起来会适得其反,因为每个插入都需要进行全表扫描,以确保它不违反约束。

于 2013-04-03T09:56:27.480 回答