在使用数据库时定义数据完整性,特别是Intra Record Integrity

时间:2016-01-16 14:01:51

标签: sql database validation integrity

我想知道是否有人能够用简单的术语解释在使用数据库时记录内完整性的含义是什么?我的定义是"对与数据验证相关的字段内容强制执行约束"但希望有人可以进一步详细说明吗?..

1 个答案:

答案 0 :(得分:1)

以下是对此的一种解释,它在很大程度上取决于“记录内”一词。

让我们从一个例子开始,假设您有患者的健康记录,它有

等字段
ID 
GENDER
AGE
DATE_OF_BIRTH
LAST_MENSTRUAL_DATE

现在,如果GENDER的值为Male,则LAST_MENSTRUAL_DATE通常为NULL或空白。

同样,如果您已填充字段AGE和DATE_OF_BIRTH,并且假设您有DATE_OF_BIRTH = January 1 1976且AGE = 30,则这是不正确的,因为如果一个人出生在January 1 1976 AGE应该是40或者,如果AGE实际上是30,那么DATE_OF_BIRTH应该是January 1 1986

注意:在同一个表中同时包含AGE和DATE_OF_BIRTH列是不好的设计,上面只是为了说明数据完整性的情况

因此,记录中的字段即记录内是有效的,并且不会违反数据完整性。

这是对记录内数据完整性意味着什么的一种解释,可能还有其他更正式和学术性的内容。

根据您使用的数据库类型,可以有多种方法在字段值上实现此类约束。