基本信息
文件名称:第3章关系数据库.ppt
文件大小:935.5 KB
总页数:96 页
更新时间:2025-06-04
总字数:约1.43万字
文档摘要

数据库原理与应用教程

―SQLServer2019第3章关系数据库第3章关系数据库关系数据库系统就是支持关系模型的数据库系统。关系数据模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。实体的联系有两类,一类是实体与实体之间的联系;另一类是实体内部各属性间的联系。关系模式中各个属性之间的相互关联,就是数据依赖,它是规范化理论中一个最重要最基本的概念,是数据库模式设计的关键。第3章关系数据库本章介绍两个问题:(1)关系数据模型三要素:关系数据结构、关系数据库完整性、关系运算即关系数据库操作(2)关系的规范化:函数依赖的相关概念、关系的规范化目的和过程第3章关系数据库3.1关系数据结构关系模型的数据结构非常简单,现实世界的实体以及实体间的各种联系均用关系来表示。在用户看来,关系模型中数据的逻辑结构就是一张二维表。3.1关系数据结构3.1.1关系的定义和性质关系就是一张二维表,但并不是任何二维表都叫关系,我们不能把日常生活中所用的任何表格都当成一个关系直接存放到数据库里。那么什么样的二维表才叫关系呢?关系:D1×D2×…×Dn的中有关系的行形成的子集叫做D1×D2×…×D7n上的一个关系(Relation),用R(D1,D2,…,Dn)表示。(R表示关系名,n表示关系的目、度或元)3.1关系数据结构2.关系的性质:关系数据库要求关系必须是具有以下性质:(1)在同一个关系中,同一个列的数据必须是同一种数据类型。(2)在同一个关系中,不同的列的数据可以同一种数据类型,但各属性名必须是互不相同。(3)在同一个关系中,任意两个元组都不能完全相同。3.1关系数据结构(4)在同一个关系中,列的次序无关紧要。即列的排列顺序是不分先后的。(5)在同一个关系中,元组的位置无关紧要,即排行不分先后。(6)关系中的每个属性必须是单值,即不可再分,这就要求关系的结构不能嵌套。这是关系应满足的最基本的条件。3.1关系数据结构例如,有这样一个学生表如下:复合表示例3.1关系数据结构上述复合表格就不是关系,应对其进行结构上的修改,才能成为数据库中的关系。(1)可以转化成一个关系,即学生成绩关系(学号,姓名,性别,系编号,C语言,英语,高数);(2)也可以转化成两个关系,即学生关系(学号,姓名,性别,系编号)和成绩关系(学号,C语言,英语,高数)。3.1关系数据结构在关系数据模型中,实体以及实体之间的联系都是用关系来表示的。它是通过关系当中的冗余属性(一般是主码和外码的关系)来实现实体之间的联系。3.1关系数据结构3.1.2关系数据库1.关系模式*关系数据库中,关系模式是型,关系是值;关系模式是对关系的描述。因此关系模式必须指出这个元组集合的结构,即它由哪些属性构成,这些属性来自哪些域。3.1关系数据结构关系模式可以形式化地表示为: R(U,D,dom,F)其中:R是关系名;U是组成该关系的属性名集合;D是属性所来自的域;dom是属性间域的映象集合;F是属性间的数据依赖关系集合。关系模式通常可以简记为*: R(U)或R(A1,A2,…,An)其中:R是关系名,A1,A2,…,An为属性名。3.1关系数据结构3.1关系数据结构关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。实际应用中,我们常常把关系模式和关系统称为关系。3.1关系数据结构2.关系数据库关系数据库就是采用关系模型的数据库。在一个给定的应用领域中,所有实体及实体之间联系的关系的集合构成一个关系数据库。关系数据库的型即为其关系模式的集合,关系数据库的值是这些关系模式在某一时刻对应的关系的集合。第3章关系数据库3.2关系的完整性数据完整性是指关系模型中数据的正确性与一致性。关系模型允许定义三类完整性约束*:实体完整性、参照完整性和用户自定义的完整性约束。3.2关系的完整性1、实体完整性规则*实体完整性规则要求关系中主码的属性具有唯一性且不能取空值*。例如学生表中的学号属性既具有唯一性又不能为空。选修关系的主码为学号和课程号既具有唯一性又不允许为空。3.2关系的完整性2、参照完整性规则*设F是基本关系R的一个或一组属性,如果F与基本关系S的主码K相对应,则称F是基本关系R的外码(Foreignkey),并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。