为既有表增加UNIQUE约束 为既有表增加UNIQUE约束

2010-07-18
可以使用ALTER TABLE来为既有表增加UNIQUE约束。语法如
ALTER TABLE table_name

ADD CONSTRAINT constraint_name

UNIQUE (column [ ASC | DESC ] [ ,...n ] )



ALTER TABLE...ADD CONSTRAINT(唯一)参数


参数

描述

table_name

这个参数指定了接收新唯一键索引的表名

constraint_name

这个参数表示要增加的约束的唯一名

column [ASC | DESC] [,...n]

存储在列中的值必须唯一标识表

中的一行(比如,没有两行对于

所有指定列可以有相同的值)。

ASC(升序)和DESC(降序)

选项定义了列在聚集和非聚集索引中的排列顺序


这个示例演示了为Production.Culture表增加一个UNIQUE键:
  1. ALTER TABLE Production.Culture  
  2. ADD CONSTRAINT UNQ_Culture_Name  
  3. UNIQUE (Name

解析

在这个示例中,代码的第一行定义了要修改的表:

  1. ALTER TABLE Production.Culture 

代码的第二行定义了约束的名字:

  1. ADD CONSTRAINT UNQ_Culture_Name 

代码的第三行定义了约束类型,后面跟的是要应用的列名:

  1. UNIQUE (Name
在UNIQUE约束定义中指定的列在表中不能有重复的值,否则操作会失败,并得到一个存在重复键值的错误。