MsSQL   发布时间:2022-05-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了sqlserver—数据完整性(理论篇)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
  • 数据完整性主要指的是数据的精确性和可靠性,目的就是为了防止数据库中存放的数值,以及字符具有合法性(即按照管理员定义的规则进行存放)

分为以下四类:

  1. 实体完整性

        实体完整性要求每一个表中的主键字段都不能为空或者重复的值。实体完整性指表中行的完整性。要求表中的所有行都有唯一的标识符,称为主关键字。主关键字是否可以修改,或整个列是否可以被删除,取决于主关键字与其他表之间要求的完整性。

        实体完整性规则:
        基本关系的所有主关键字对应的主属性都不能取空值,例如,学生选课的关系选课(学号,课程号,成绩)中,学号和课程号共同组成为主关键字,则学号和课程号两个属性都不能为空。因为没有学号的成绩或没有课程号的成绩都是不存在的。

     2.域完整性

      域完整性可以强制域完整性限制类型(即通过使用数据类型)、限制格式(即通过使check约束和规则)或者是限制可能值得范围(使用foreign key约束、check约束、default定义、not null定义和规则)。

      3.引用完整性

       该名词,很多同志可能刚看到也比较陌生,因为在sql server2000之前(不含)的版本中一直被包括在参照完整性的概念里。

        在输入或删除记录时,引用完整性保持表之间已定义的关系。在 Microsoft® sql Server™ 2000 中,引用完整性基于外键与主键之间或外键与唯一键之间的关系(通过 FOREIGN KEY 和 checK 约束)。引用完整性确保键值在所有表中一致。这样的一致性要求不能引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改。
强制引用完整性时,sql Server 禁止用户进行下列操作:

  • 当主表中没有关联的记录时,将记录添加到相关表中。
  • 更改主表中的值并导致相关表中的记录孤立。
  • 从主表中删除记录,但仍存在与该记录匹配的相关记录。
            例如,对于 pubs 数据库中的 SALEs 和 titles 表,引用完整性基于 SALEs 表中的键 (title_id) 与 titles 表中的主键 (title_id) 之间的关系。

    4.用户定义完整性

       用户定义完整性使您得以定义不属于其它任何完整性分类的特定业务规则。所有的完整性类型都支持用户定义完整性(create table 中的所有列级和表级约束、存储过程和触发器)。

大佬总结

以上是大佬教程为你收集整理的sqlserver—数据完整性(理论篇)全部内容,希望文章能够帮你解决sqlserver—数据完整性(理论篇)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: