约束:CONSTRAINTS
的有关信息介绍如下:数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(Reliability)。它是应防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。数据的完整性要从以下四个方面考虑:
l 实体完整性(Entity Integrity):例如,同一个表中,不能存在两条完全相同无法区分的记录
l 域完整性(Domain Integrity):例如:年龄范围0-120,性别范围“男/女”
l 引用完整性(Referential Integrity):例如:员工所在部门,在部门表中要能找到这个部门
l 用户自定义完整性(User-defined Integrity):例如:用户名唯一、密码不能为空等,本部门经理的工资不得高于本部门职工的平均工资的5倍。
根据约束的特点,分为几种:
l 键约束:主键约束、外键约束、唯一键约束
l Not NULL约束:非空约束
l Check约束:检查约束
l Default约束:缺省约束
查看某个表的约束和索引
主键约束PRIMARY KEY
主键:Primary key,简称PK,数据库主键作用保证实体的完整性,可以是一个列或多列的组合。
唯一键Unique key,简称UK,
外键:Foreign key,简称FK
非空约束
l NOT NULL 非空约束,规定某个字段不能为空
检查约束
注意:MySQL不支持check约束,但可以使用check约束,而没有任何效果;
例如:age tinyint check(age >20) 或 sex char(2) check(sex in(‘男’,’女’))
Default缺省约束
default:默认值,在插入数据时某列如果没指定其他的值,那么会将默认值添加到新记录。