参照的完全性请求关联中不允许援用不存在的实体。与实体完全性是关联模子必需满足的完全性束缚条件,目标是保证数据的一致性。参照完全性又称援用完全性。(引荐进修:MySQL视频教程)
参照完全性是关联模子的完全束缚之一,属于数据完全性的一种,其他另有:实体完全性、用户自定义完全性。
参照完全性划定规矩:若属性或属性组F是基本关联R的外键,它与基本关联S的主键Ks相对应(基本关联R和S不一定是差别的关联),则关于R中的每一个元组在F上的值必需为:
(1)空值,F的每一个属性值均为空值。
(2)S中某个元组中的主键值(主码值)。
即参照的关联中的属性值必需可以在被参照关联找到或许取空值,不然不符合数据库的语义。在实际操纵时如更新、删除、插进去一个表中的数据,经由过程参照援用互相干联的另一个表中的数据,来搜检对表的数据操纵是不是准确,不准确则谢绝操纵
性子
参照完全性属于表间划定规矩。关于永远关联的相干表,在更新、插进去或删除纪录时,假如只改其一不改其二,就会影响数据的完全性:
比方修正父表中关键字值后,子表关键字值未做响应转变;删除父表的某纪录后,子表的响应纪录未删除,以致这些纪录成为伶仃纪录;关于子表插进去的纪录,父表中没有响应关键字值的纪录;等等。关于这些设想表间数据的完全性,统称为参照完全性。
参照完全性则是相干联的两个表之间的束缚,细致的说,就是从表中每条纪录外键的值必需是主表中存在的,因而,假如在两个表之间建立了关联关联,则对一个关联举行的操纵要影响到另一个表中的纪录。
假如实行了参照完全性,那末当主表中没有相干纪录时,就不能将纪录增加到相干表中。也不能在相干表中存在婚配的纪录时删除主表中的纪录,更不能在相干表中有相干纪录时,变动主表中的主键值。
也就是说,实行了参照完全性后,对表中主键字段举行操纵时体系会自动地搜检主键字段,看看该字段是不是被增加、修正、删除了。假如对主键的修正违犯了参照完全性的请求,那末体系就会自动强制执行参照完全性。
更多MySQL相干技术文章,请接见MySQL教程栏目举行进修!
以上就是在表中设置外键完成的是哪一类数据完全性的细致内容,更多请关注ki4网别的相干文章!