目录
一、约束的概念
1.约束是作用于表中列上的规则,用于限制加入表的数据。
2.约束的存在保证了数据库中数据的正确性、有效性和完整性。
二、约束的分类(MySQL不支持检查约束)
约束名称 | 作用(描述) | 关键字 |
非空约束 | 保证列中所有数据不能有null值 | NOT NULL |
唯一约束 | 保证列中所有数据各不相同 | UNIQUE |
主键约束 | 主键是一行数据的唯一标识,要求非空且唯一(比如id) | PRIMARY KEY |
默认约束 | 保存数据时,未指定值则采用默认值(比如姓名) | DEFAULT |
外键约束 | 外键用来让两个表的数据建立连接,保证数据一致性和完整性 | FOREIGN KEY |
Ⅰ注意:
①创建的员工id只有主键约束时,如果添加的员工信息中给id赋值 null 或 “空”,那么都会添加失败
②员工id有主键约束和自增长的时候,无论添加员工信息id时给 null 或 “空”,都可以添加的上
Ⅱ注意:
当我们在创建完表之后,想给字段添加/删除约束
Ⅲ注意:在使用默认约束时
删除默认约束:
三、外键约束
1.视图化概念
外键约束是让两个表的数据之间建立连接,保证数据的一致性和完整性。
未建立外键约束的两个表:可以看见两个表之间没有任何关联
建立了外键约束的两个表:可以看见这两个表建立了连接关系
2.如何创建外键约束
前提:①两个表之间需要有联系,比如员工信息和部门信息可以构成联系;②需要确认主/从表的关系,外键需要在从表的字段上进行建立;③在使用sql语句创建主从表时,创建顺序为:主表,然后是 从表。包括向表中添加数据时也是采用该顺序。
创建外键约束的sql:
第二种情况:如果表已经创建好了,怎么添加外键约束