MySQL常用约束以及添加约束的两种方法

MySQL常用约束

一、常用约束

主键约束:primary key

外键约束:foreign key

非空约束:not null

唯一约束:unique

默认约束:default

枚       举:enum

(自增列标识:auto_increment)

添加约束方法

一、建表时添加

例:create table 表名(

字段1 数据类型(int) primary key,

字段2 数据类型 not null <非空约束>,

字段3 数据类型 unique <唯一>,

字段4 数据类型 default'值' <默认>,

列名5 数据类型 primary key(列名,列名)<联合主键>,

foreign key (外键列) references 主键表(主键列) <添加外键,主键表主键列,是本表引用那个表的那个列>

);

二、建表完成后添加

1.主键

语法:later table 表名 add primary key(字段名);

删除主键

语法:alter table 表名 drop primary key;

(如果主键是自增列的话,要先删除自增列标示)

2.非空约束

语法:alter table 表名 modify 列名 数据类型 not null;

删除非空

语法:alter table 表名 modify 列名 数据类型 null;

3.唯一约束

语法:alter table 表名 add constraint 约束名 unique(字段);

删除唯一

语法:alter table 表名 drop index 约束名;

4.自动增长

语法:alter table 表名 modify 列名 int auto_increment;

删除自增

语法:alter table 表名 modify 列名 int;

5.默认值

语法:alter table 表名 alter 列名 set default'值';

删除默认值

语法:alter table 表名alter 列名 drop default;

6.添加外键

语法:alter table 表名 add constraint 约束名 foreign key(外键列) references 主键表(主键列)

删除外键

语法:alter table 表名 drop foreign key 约束名;

(当不知道约束名是什么的时候,可以通过 show create table 表名,语句来查看建表语句,)

7.联合主键

语法:alter table 表名 add primary key(字段1,字段2)

删除联合主键

语法:alter table 表名 drop primary key;

你可能感兴趣的:(MySQL)