约束
一、约束
在MySQL中,约束是指对表中的数据的一种约束,能够帮助数据库管理员很好的管理数据库,并且能够确保数据的正确性和有效性。
MySQL中一共有六种约束:主键约束、外键约束、惟一性约束、非空约束、默认值约束、检查约束。
二、主键约束
在数据库设计中,一般会要求表中设置一个主键,该主键是一个特殊特殊的字段,并且能够标识表中唯一的信息。如:学生表中的学生号。
主键特点:
1)每个表中只能有一个主键。
2)主键不能为空。
3)主键必须标识唯一的行。
4)联合主键中的字段只能在表中出现一次。
1.主键的添加
1)建表时添加
2)建表后追加
3)联合主键的添加
2.删除主键
三、唯一性约束
是指表中所有的记录不能出现重复。惟一性约束与主键不同的是,惟一性约束可以有多个字段,可以为空,但是只能出现一次。
四、非空约束
指的是表中的数据不能为空,一般用not null表示。
五、默认值约束
指的是用来表示当数据不输入时,MySQL自动为其添加一个已经设置号的数据。
六、外键约束
1.外键约束
外键约束是表中一个特殊字段,用关键词foreign key来表示,一般和主表一起使用。在相关联的表中,主键所在的表位主表(父表),外键所在的表为从表(子表)。
2.外键特点
1)主表必须定义主键。
2)外键所在的列的数据类型必须与主键所在的数据类型一致。
3)主键不能包含null值,但是外键可以。
3.外键的操作
3.1 创建外键
1)第一种在建表的时候同时创建
2)第二种在建表的时候同时创建
3)在建表之后追加外键
alter table 子表名
add constraint 外键名
foreign key (外键字段名)
references 父表名(被引用的字段名)
3.2 删除外键
alter table 表 drop foreign key 外键名;
4.删除数据
先删除子表数据,再删除父表数据。
先删除子表,再删除父表。