MySQL约束控制
(1) 数据完整性约束
数据的完整性总体来说可分为以下4类,即实体完整性、参照完整性、域完整性和用户自定义完整性。
实体完整性: 实体的完整性强制表的标识符列或主键的完整性
(通过约束,唯一约束,主键约束或标识列属性)
参照完整性: 在删除和输入记录时,引用完整性保持表之间已
定义的关系,引用完整性确保键值在所有表中一致。
域完整性: 限制类型(数据类型),格式(检查约束和规则),可能值范围(外键约束,检查约束,默认值定义,非空约束和规则)
用户自定义完整性: 用户自己定义的业务规则。
(2)字段的约束
MySQL支持的常用约束条件有6种:
主键(primary key)约束
外键(foreign key)约束
非空(not NULL)约束
唯一性( unique )约束
默认值( default)约束
自增约束(auto_increment)
删除(delete)约束
检查( check)约束需要借助触发器或者MySQL复合数据类型实现。
1)主键(primary key)约束
一张表中只允许设置一个主键,是一个字段或字段组(不建议使用)。
设置主键通常有两种方式:表级完整性约束和列级完整性约束。
①如果一个表的主键是单个字段ID
如果用表级完整性约束,就是用PRIMARY KEY