在 Microsoft SQL Server 中,可以对唯一列(如 employee id )或一起唯一标识每条记录的一组列(如 author + title )创建唯一索引。
    例如,如果计划频繁查询 
    
      employee
    
     表中(其中主键为 
    
      emp
    
    _
    
      id
    
    )的身份证号码 (
    
      ssn
    
    ) 列,并希望确保身份证号码是唯一的,则可以在 
    
      ssn
    
     上创建唯一索引。如果用户为一个以上的雇员输入相同的身份证号码,则数据库将显示错误而且无法保存该表。
  
在创建或修改唯一索引时,可以可设置一个忽略重复键的选项。如果此选项已设置为 “是” ,当您试图通过添加影响多行的数据来创建重复键(使用 INSERT 语句)时,则不会添加包含重复项的行;如果此选项设置为 “否” ,则整个插入操作将失败,并且将回滚所有数据。
          创建唯一索引 
    
      - 
            
在对象资源管理器中,右键单击表,再单击 “设计” 。
此时,将在表设计器中打开该表。
 - 
            
在 表设计器 菜单上,单击 “索引/键” 。
 - 
            
单击 “添加” 。 “选定的主/唯一键或索引” 列表将显示新索引的系统分配名称。
 - 
            
在网格中,单击 “类型” 。
 - 
            
从属性右侧的下拉列表中选择 “索引” 。
 - 
            
在 “列” 下,选择要编制索引的列。最多可选择 16 列。为获得最佳的性能,请只为每个索引选择一列或两列。对于所选的每一列,指定索引是以升序还是以降序来排列此列的值。
 - 
            
在网格中,单击 “是唯一的” 。
 - 
            
从属性右侧的下拉列表中选择 “是” 。
 - 
            
如果希望忽略会在唯一索引中创建重复键(用 INSERT 语句)的数据,请选择 “忽略重复键” 选项并选择 “是” 。
 
在保存表或关系图时将在数据库中创建该索引。
| 注意: | 
|---|
| 如果单个列在多行中包含 NULL,则无法对该列创建唯一索引。同样,如果列的组合在多行中包含 NULL,则无法对多个列创建唯一索引。在进行索引时,它们都被视为重复值。 | 

