APP下载

论MYSQL中域完整性约束的实现

2014-06-20周谊李国忠

无线互联科技 2014年3期

周谊 李国忠

摘 要:本文通过对MYSQL中设置的域完整性约束不能实现的介绍,分析完整性约束的实质问题,引入触发器的错误中止实例,并由此探讨域完整性约束的解决方案。

关键词:完整性;约束;MYSQL;CHECK;触发器

1 引言

一致性和准确性对数据库中的数据来说是非常重要的,对数据表设置数据完整性约束是数据库服务器的一项重要功能。如果定义了完整性约束,每次数据更新,数据库系统都会测试新的内容是否合符的完整性设置从而对表中的输入做出限制。

2 了解MYSQL中的完整性约束

数据完整性大致划分为四种类型:实体完整性、参照完整性、域完整性和用户定义完整性。

2.1 实体完整性

实体完整性保证每一个值都能由称为主键的属性来唯一标识。主键就是表中的一个或多个字段的组合值,其内容能唯一地标志表中的每一条记录。通过定义PRIMARY KEY约束来创建主键约束,其内容不能取空值。

2.2 参照完整性约束

参照完整性约束也被称为外键约束,参照完整性约束保证外键的值必须与主表中相关的主键值相匹配。通过定义REFERENCE_DEFINITION约束来创建外键约束。

2.3 域完整性约束

域完整性约束保证只在有效范围内的值才能存储到字段中,它可以通过限制数据类型、值域来实现。CHECK完整性约束就是通过设置值域来实现字段的取值范围。

2.4 用户定义完整性

用户定义完整性是由用户指定的一组规则来实现对数据的特定约束。

另在数据表中,唯一性约束像主键约束一样,是表的一个或多个字段的组合值,它们的值在任何时候都是唯一的。……

登录APP查看全文