创建唯一约束可确保在不参与主键的特定列中不输入重复值。当唯一约束和主键都强制唯一性时,如果满足下列条件,则应将唯一约束而不是主键约束附加到表上:
- 希望在列或列的组合中强制唯一性。可将多个唯一约束附加到表,但是只能将一个主键约束附加到表。
- 希望在允许空值的列中强制唯一性。可将唯一约束附加到允许空值的列,但是只能将主键约束附加到不允许空值的列。当将唯一约束附加到允许空值的列时,请确保在约束的列中最多有一行包含空值。
创建唯一约束
- 在数据库关系图中,右击将包含该约束的表,然后从快捷菜单中选择“属性页”。
- 或 -
对于将包含该约束的表,打开表设计器,在其中右击,然后从快捷菜单中选择“属性页”。
- 选择“索引/键”选项卡。
- 选择“新建”。系统分配的名称出现在“索引名”框中。
- 在“列名”下,展开列的列表,然后选择要将约束附加到的列。若要将约束附加到多列,请选择后面行中的其他列。
- 选中“创建 UNIQUE”复选框。
- 选择“约束”选项。
当保存表或关系图时,在数据库中创建唯一约束。
修改唯一约束
- 在数据库关系图中,右击包含该约束的表,然后从快捷菜单中选择“属性页”。
- 或 -
对于包含该约束的表,打开表设计器,在其中右击,然后从快捷菜单中选择“属性页”。
- 选择“索引/键”选项卡。
- 从“选定的索引”列表中选择要更改的约束。
- 完成下表中的某个操作:
要实现的操作 请执行这些步骤 更改约束所附加到的列 在“列名”网格中,展开该列表,然后选择要将约束附加到的列。 重命名约束 在“索引名”框中键入新名称。确保新名称不与“选定的索引”列表中的名称重复。 设置聚集选项(仅限 Microsoft SQL Server) 选中“创建为 CLUSTERED”复选框。对于每个表,只允许存在一个聚集索引。如果聚集索引已经存在,则您必须首先在该索引上清除此设置。 定义填充因子(仅限 Microsoft SQL Server) 在“填充因子”框中键入一个介于 0 到 100 的整数。
当保存表或关系图时,约束将在数据库中得到更新。
删除唯一约束
- 在数据库关系图中,右击包含被约束的一列或多列的表,然后从快捷菜单中选择“索引/键”。
- 或 -
对于包含该约束的表,打开表设计器,在其中右击,然后从快捷菜单中选择“索引/键”。
- 从“选定的索引”列表中选择该唯一约束。
- 选择“删除”。
警告 选择“删除”所导致的操作在撤消时将丢失对数据库关系图所做的所有其他更改。若要撤消此操作,请关闭此数据库关系图或表设计窗口以及所有其他打开的数据库关系图和表设计窗口,而不保存所做更改。
当保存表或关系图时,约束从数据库中删除。