目录
1. 约束
1.1 概念:
1.2 分类:
1.3 使用:
1.4 外键约束;
1.5 总结
数据库:数据库都有约束,数据库设计,多表查询,事物这四方面的知识;
我们先按这个顺序进行学习;
1. 约束
1.1 概念:
限制输入表中的数据,以保证数据的真实性,可靠性。
比如,员工表中某一员工出生日期在999年,这很不科学!
1.2 分类:
主键约束,外键约束,唯一键约束,非空约束,默认约束,
检查约束(MySQL不支持检查约束);
1.3 使用:
建表时,在字段后直接使用:
1.4 外键约束;
建表时添加外键约束:
SQL语句:CONSTRAINT 【外键名】foreing key 本表列名 references 主表 主表列名;
建完表后添加外键约束:
SQL语句:
alter table 表名 add CONSTRAINT 【外键名】foreing key 本表列名 references 主表 主表列名;
注意:外键名一般是:fk_表名1_表名2;
删除外键:
SQL语句:alter table 从表名 drop foreign key 外键名;
含有外键的表称为从表,另一个表为主表;
该SQL语句写在从表里,因此需要先建立主表,才能 reference 主表 主表列名;
连接后,需要先添加主表数据,才能将与主表关联的数据添加到从表里;
删除时,如果需要删除主表,需要先删除从表的数据;
1.5 总结
(1)主键是特殊的唯一键;
(2)自动增长使用时该数据类型必须是整型,且唯一;
(3)默认约束为0/null时,可以插入null;
(4)外键在实际生产中大部分用不到,因为其使用较麻烦,查询效率低;