如何创建唯一索引 (Visual Database Tools)

更新日期: 2006 年 12 月 12 日

在 Microsoft SQL Server 中,可以对唯一列(例如 employee id)或一起用来唯一标识每个记录的一组列(例如 author + title)创建唯一索引。

例如,如果计划频繁查询 employee 表中(其中主键为 emp_id)的身份证号码 (ssn) 列,并希望确保身份证号码是唯一的,则可以在 ssn 上创建唯一索引。如果用户为一个以上的雇员输入相同的身份证号码,则数据库将显示错误而且无法保存该表。

在创建或修改唯一索引时,可以可设置一个忽略重复键的选项。如果此选项已设置为**“是”,当您试图通过添加影响多行的数据来创建重复键(使用 INSERT 语句)时,则不会添加包含重复项的行;如果此选项设置为“否”**,则整个插入操作将失败,并且将回滚所有数据。

创建唯一索引

  1. 在对象资源管理器中,右键单击表,再单击**“设计”(在 SP1 或更早版本中为“修改”**)。

    此时,将在表设计器中打开该表。

  2. 在**“表设计器”菜单上,单击“索引/键”**。

  3. 单击**“添加”“选定的主/唯一键或索引”**列表将显示新索引的系统分配名称。

  4. 在网格中,单击**“类型”**。

  5. 从属性右侧的下拉列表中选择**“索引”**。

  6. 在**“列名”**之下,选择要进行索引的列。最多可选择 16 列。为获得最佳的性能,请只为每个索引选择一列或两列。对于所选的每一列,指定索引是以升序还是以降序来排列此列的值。

  7. 在网格中,单击**“是唯一的”**。

  8. 从属性右侧的下拉列表中选择**“是”**。

  9. 如果希望忽略会在唯一索引中创建重复键(用 INSERT 语句)的数据,请选择**“忽略重复键”**选项。

在保存表或关系图时将在数据库中创建该索引。

ms175825.note(zh-cn,SQL.90).gif注意:
如果单个列在多行中包含 NULL,则无法对该列创建唯一索引。同样,如果列的组合在多行中包含 NULL,则无法对多个列创建唯一索引。在进行索引时,它们都被视为重复值。

请参阅

概念

唯一索引设计指南

其他资源

使用索引 (Visual Database Tools)
“索引/键”对话框 (Visual Database Tools)
使用键 (Visual Database Tools)

帮助和信息

获取 SQL Server 2005 帮助