mysql 建表约束
mysql 建表有几大约束
1、主键约束
能够唯一确定一张表中的一条记录,即通过给某个字段添加约束,就可以让该字段不重复且不为空。
1)单个主键的情况如下:
2)联合主键:只要联合的主键值加起来不重复,但主键id还是不能为null,如:
3)当创建表的时候,忘记创建主键约束,可执行此命令:
alter table 表 add primary key(id);
4)想要删除一个主键约束时,可执行此命令:
alter table 表 drop primary key(id);
5)修改字段,添加一个主键约束,可执行此命令:
alter table 表 modify id int primary key;
2、唯一约束
约束修饰的字段值不可以重复
1)单个唯一约束,建表添加唯一约束;
2)联合唯一约束
两个唯一约束键加起来不重复就可以
3)删除唯一约束,执行此命令(前提:这个表未插入任何数据):
alter table 表 drop index name;
4)在表中已有的字段中修改为唯一约束,执行此命令:
alter table 表 modify name varchar(20) unique;
5)当创建表的时候,忘记创建唯一约束,可执行此命令:
alter table 表 add unique(id);
或:alter table 表 add number int unique;
3、非空约束
修饰的字段值不能为空,即不能为NULL
4、默认约束
当插入字段值的时候,若没有传值,就会使用默认值
5、外键约束
涉及到两个表,父表,子表,即主表,副表,需满足以下条件:
---- 需要主表中有对应关联的字段值才可以在副表中插入数据
---- 主表中的记录被副表引用,是不能删除的