一、主键约束:唯一、不重复、不为空 primary key PK_主键名字
1.建表时,创建主键约束。
create table 表名(
列名1 数据类型 primary key,
列名2 数据类型
);
2.已存在的表,添加主键约束。
alter table 表名 add constraint 主键约束名字 add primary key(列名);
3.删除主键约束。
alter table 表名 drop primary key;
联合主键
建表时,创建联合主键。
create table 表名(
列名1 数据类型 ,
列名2 数据类型 ,
primary key(列名1,列名2)
);
已存在表,添加联合主键
alter table 表名 add constraint 主键约束名字 primary key(列名1,列名2);
二、唯一约束 unique UN_唯一约束名字
特点:列中不允许有重复的值;可以有空值;可以有多个唯一约束;默认情况,唯一约束的名字与列名相同;添加唯一约束后,系统会生成一个索引。
1.建表时,创建唯一约束。
create table 表名(
列名1 数据类型 unique ,
列名2 数据类型
);
2.已存在表,添加唯一约束。
alter table 表名 add unique(列名);
3.删除唯一约束。
alter table 表名 drop index 唯一约束的名字;
三、默认约束 default 即:不写数据时,也会默认给一个值。
1. 建表时,创建默认约束。
create table 表名(
列名1 数据类型 default '字符串或者日期类型' ,
列名2 数据类型 default 数值类型,
列名3 数据类型
);
2.已存在的表,添加默认约束。
alter table 表名 modify 列名 数据类型 default '值' ;
3.删除默认约束。
alter table 表名 modify 列名 数据类型;
四、非空约束 not null 即:必须有值
1.建表时,创建非空约束。
create table 表名(
列名1 数据类型 not null,
列名2 数据类型
);
2.已存在的表,添加非空约束。
alter table 表名 modify 列名 数据类型 not null;
3.删除非空约束。
alter table 表名 modify 列名 数据类型;
五、外键约束 foreign key FK_外键名字 针对从表而言
1.建表时,创建外键约束
先建主表
create table 主表名(
列名1 数据类型 ,
列名2 数据类型
);
再建从表 --外键在这个表建立
create table 从表名(
列名1 数据类型 ,
列名2 数据类型 ,
constraint FK_外键名 foreign key(从表列名) references 主表名(主表列名);
);
2.已存在表,添加外键约束。
alter table 从表名 add constraint FK_外键名 foreign key(从表列名) references 主表表名(主表列名);
3.删除外键约束。
alter table 从表名 drop foreign key FK_外键名;