如何在SQL Server 2005中的现有表上创建唯一约束?
我正在寻找TSQL以及如何在数据库图表中完成它.
SQL命令是:
ALTER TABLEADD CONSTRAINT UNIQUE NONCLUSTERED ( )
请参阅此处的完整语法.
如果您想从数据库图表中执行此操作:
右键单击表并选择"索引/键"
单击"添加"按钮以添加新索引
在右侧的属性中输入必要的信息:
你想要的列(点击省略号按钮选择)
设置是独特的是
给它一个合适的名字
在SQL Server Management Studio Express中:
右键单击表,选择" 修改"或" 设计"(对于以后的版本)
右键单击字段,选择" 索引/键"...
单击添加
对于" 列",请选择要唯一的字段名称.
对于Type,选择Unique Key.
单击关闭,保存表格.
ALTER TABLE [TableName] ADD CONSTRAINT [constraintName] UNIQUE ([columns])
警告:您设置为唯一的列中只能有一个空行.
您可以使用SQL 2008中的筛选索引执行此操作:
CREATE UNIQUE NONCLUSTERED INDEX idx_col1 ON dbo.MyTable(col1) WHERE col1 IS NOT NULL;
请参阅字段值必须是唯一的,除非它对于一系列答案为NULL.
ALTER TABLE dbo.ADD CONSTRAINT UNIQUE NONCLUSTERED ( ) ON [PRIMARY]
我还发现你可以通过数据库图表来做到这一点.
通过右键单击表并选择索引/键...
单击"添加"按钮,将列更改为您希望使其唯一的列.
变化是独一无二的.
单击关闭并保存图表,然后将其添加到表中.
您正在寻找以下内容
ALTER TABLE dbo.doc_exz ADD CONSTRAINT col_b_def UNIQUE column_b
MSDN文档
要在已创建表时在一列或多列上创建UNIQUE约束,请使用以下SQL:
ALTER TABLE TableName ADd UNIQUE (ColumnName1,ColumnName2, ColumnName3, ...)
允许为上述查询命名UNIQUE约束
ALTER TABLE TableName ADD CONSTRAINT un_constaint_name UNIQUE (ColumnName1,ColumnName2, ColumnName3, ...)
MySQL/SQL Server/Oracle/MS Access支持的查询.
在管理工作室图表中选择表格,如果需要,右键单击以添加新列,右键单击该列并选择"检查约束",您可以在其中添加一个.