mssql sqlserver 唯一约束设置方法分享


摘要:
唯一约束在sql server中的功能为限制某一张表中,不能存在相同值,可以从数据库层面限制向表中插入相同值


例:

/*
例: 
创建表A,设置列 "name" 为唯一约束,避免重复,
如下脚本所示:
*/
CREATE TABLE A(
       keyId  int  not null,
       name   varchar(100) not null unique  ---建表时设置唯一约束
)
go
insert into A(keyId,name)values(1,'a')
insert into A(keyId,name)values(1,'a')
/*
插入重复提示 
消息 2627,级别 14,状态 1,第 7 行
违反了 UNIQUE KEY 约束 'UQ__A__72E12F1B1348B5CC'。
不能在对象 'dbo.A' 中插入重复键。
*/
go
/*修改列,设置约束*/ 
alter table A 
 modify name varchar(100) not null unique
 go
/*添加约束名 添加约束*/
ALTER TABLE A
   ADD CONSTRAINT table_A_unique_name UNIQUE(name); 
 /*修改表 删除约束*/
ALTER TABLE A
   DROP CONSTRAINT table_A_unique_name;
 go   
truncate table A
drop  table A