标签:语句 03 constraint 列名 SQLServer alter add table check
一:添加约束
1、主键约束:(主键是不允许重复,不允许为null的)
(1)、在创建表的时候设置主键
create table 表名(列名1 数据类型 primary key, 列名2 数据类型.....)
(2)、在创建表后设置主键
alter table 表名 add constraint 约束名 primary key(要设为主键的列名)
2、唯一约束:(唯一键不允许重复,但允许有且只有一个null)
(1)、在创建表的时候设置唯一键
create table 表名(列名1 数据类型 unique, 列名2 数据类型.....)
(2)、在创建表后设置唯一键
alter table 表名 add constraint 约束名 unique(要设为唯一键的列名)
3、Check约束(自定义约束):
(1)、在创建表的时候设置check键
create table 表名(列名1 数据类型 check(列名1 like ‘取值范围’), 列名2 数据类型.....)
(2)、在创建表后设置check键
alter table 表名 add constraint 约束名 check(列名1 like ‘取值范围’)
4、默认值约束:
(1)、在创建表的时候设置check键
create table 表名(列名1 数据类型 check(列名1 like ‘取值范围’), 列名2 数据类型.....)
(2)、在创建表后设置check键
alter table 表名 add constraint 约束名 check(列名1 like ‘取值范围’)
5、外键约束:
alter table 外键表 add constraint 约束名 foreign key(外键(列名)) references 主键表(主键(列名))
use pas
create table tb1(
id int primary key,
name varchar(10) unique,
age int check(age like '1[0-5]'),
sex varchar(2) default '男'
)
create table tb1(
id int not null,
name varchar(10),
age int,
sex varchar(2)
)
alter table tb1 add constraint PK_id
primary key (id)
alter table tb1 add constraint UQ_name
unique (name)
alter table tb1 add constraint CK_age
check(age like '1[0-5]')
alter table tb1 add constraint UQ_sex
default '男' for sex
(两种方法所创建出来的表结构是一样的)
标签:语句,03,constraint,列名,SQLServer,alter,add,table,check 来源: https://www.cnblogs.com/shaowangwu/p/16324485.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。