• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

第二章 SQL Server数据库表管理

mysql 搞代码 4年前 (2022-01-09) 31次浏览 已收录 0个评论

数据库本身无法直接存储数据,存储数据是通过数据库中的表来实现的。 2.1 表相关的几个基本概念 在创建和管理数据库表之前,需要理解以下几个概念。 2.1.1 数据完整性 数据完整性是要求数据库中的数据具有准确性,准确性是通过数据库表的设计和约束来实现的

  数据库本身无法直接存储数据,存储数据是通过数据库中的表来实现的。

2.1 表相关的几个基本概念

  在创建和管理数据库表之前,需要理解以下几个概念。

2.1.1 数据完整性

  数据完整性是要求数据库中的数据具有准确性,准确性是通过数据库表的设计和约束来实现的。例如:在存储学生信息的表中,如果允许任意输入学员信息的话,则在同一张表中可能重复出现一个学员的信息;还有如果不对表中存储的年龄信息加以限制,则学员出现的年龄可能出现负数,这样的数据都不具备完整性。

  为了实现完整性,数据库需要做以下两方面的工作。

    检验每行数据是否符合要求。

    检验每列数据是否符合要求。

  

本文来源gaodai.ma#com搞#代!码(网

为实现以上要求,SQL Server提供了以下4种类型的约束(Constraint)。

  1. 实体完整性约束

    实体完整性要求表中的每一行数据都反映不同的实体,不能存在相同的数据行。

    通过索引、唯一约束、逐渐约束或标识列属性,可以实现表的实体完整性。

  2. 域完整性约束

    域完整性是指给定列的输入有效性。

    通过限制数据类型、检查约束、输入格式、外键约束、默认值、非空约束等多种方法,可以实现表的域完整性。

  3. 引用完整性约束

    在输入或删除数据行时,引用完整性约束用来保持表之间已定义的关系。

    例如:在管理学员信息的时候,一个表用来存储学员的信息,一个表用来存储考试成绩的详细情况,并且考试成绩表中的一列数值就是学员信息表中的编号,用来表示是哪个学员的考试。

  

    可以看出两张表建立了“关系”,学员信息表是“主表”,学员成绩表是“子表”(有时也叫做“相关表”)。

    在强制引用完整性时,SQL Server 禁止用户进行下列操作。

      当主表中没有关联的记录时,将记录添加到相关表中。也就是说学员成绩表中不能够出现在学员信息表中不存在的学号。

      更改主表中的值并导致相关表中的记录孤立。如果学员信息表中的学号改变了,学员成绩表中的学号也应当随之改变。

      从主表中删除记录,但仍存在与该记录匹配的相关记录。如果把学员信息表中的学员删除了,则该学员的学号不能出现在学员成绩表中。

    引用完整性通过逐渐和外键之间的引号关系来实现。

  4. 自定义完整性约束


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:第二章 SQL Server数据库表管理

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址