https://blog.csdn.net/c_p_h/article/details/54414880
我们知道在Sql Server中修改表结构的命令是Alter table,其基本格式如下:
- 1
- 2
**ALTER TABLE [schema_name.] table_name{ALTER COLUMN column_name<data_type[NULL|NOTNULL]|ADD<column_definition>|<computed_column_definition<table_constraint>}|DROP[CONSTRAINT]constrait_name|Column column_name}**
(然并卵,没有具体的实操也许还是看不明白这个)。
现在我们创建users表格:
create table users(
userId Integer primary key identity(1,1),
username char(255) unique not null,
phone Integer not null,
password char(255) not null,
dormitory char(25) not null,
balance float default 0
)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
现在我要给phone属性添加unique约束,则相应的sql语句为:
alter table users add constraint UQ__users__F3DBC572023D5A041 unique(phone)
- 1
语法格式为:alter table 表名 add constraint 约束名 unique(列名)
查看xxx表的约束名的sql语句为:exec sp_help '表名'
例如我查询刚刚users表结果如下:
其中粉红色圈那个就是有约束性的属性对于的约束名。
约束名的含义:pk代表主键约束的名字,df代表默认约束的名字,ck代表check约束的名字等等。
约束名不能有重复,觉得约束的约束性质是前缀,例如表格中:PK__users
所以要给属性添加约束只要把后面改为不一样就好(注意主键的唯一性)
同理可推sql server 2008 r2中用alter修改表结构—删除属性的约束:
再用alter table 表名 drop constraint 约束的名字