第二讲 关系数据库理论


29
专门的关系运算
例:设有学生-课程关系数据库,如下所示:
S
SNO
96001 96002 96003 96004 96005 96006

SNAME
丁一
王二 张三 李四 刘五
SDEPT
计算机
计算机 数学 信息 数学
SAGE
19
20 21 19 20
C
CNO
C1 C2 C3
CNAME
高等代数 程序设计 微机原理
关系代数的基本术语
如果某一个关系中的属性(或属性集合)在另一个关系中是主码,则称该属性
③ 外码(Foreign Key -- FK)
(或属性集合)是外码。 学生关系 课程关系 学习成绩关系
主码
学号 姓名 0101 0102 0103 0104 张三 李四 王五 赵六 所在系 计算机 计算机 计算机 计算机 课程号 C01 C02 C03 C04
1
《数据库系统及应用》
主讲人:陈业斌 教授
安徽工业大学
2
第二讲 关系数据库理论 目
01
02 03
关系代数的基本术语
关系模式与关系 关系的完整性

04
关系运算
3
关系数据库的奠基人
E.F.Codd,英国人,1923生于英格兰中部波 特兰。第二次世界大战时应征入伍,在皇家 空军服役。 大战结束后,到英国牛津大学数 学专业学习,1963年获得硕士学位,1965年 又获得博士学位。 60年代后期开始数据库研究, 1970年E.F.Codd 博士提出关系模型概念,他因此获得1981年 的ACM图灵奖。
8
关系代数的基本术语
① 域和属性 域是属性的取值范围,属性是列。属性名可以是域 名,但有时不同的列名可以定义在同一域中,这时属性 名就不能与域名同名了。
学号 姓名 年龄 0104 赵六 20 0101 张三 20 0103 王五 19 0102 李四 18 年级 1
2 3 2
9
关系代数的基本术语
5
关系代数的基本术语
定义2: 笛卡尔积
给定一组域D1,D2,…,Dn, D1,D2,…,Dn的笛卡儿积为 D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n} 其中每一个元素(d1,d2,…,dn)叫做一个n元组。元组中的每 一个值di叫做一个分量。
度(n):参与笛卡儿积的域的个数,它表示了每一个元组中分量的个数。 基:域中可取值的个数。
② 关系的码(Key) (或候选码、键)。
如果一个属性(或属性集合)的值能唯一地标识一个关系的元组而 又不含有多余的属性,则称该属性(或属性集合)为关系的码(或候 选码,也称键)。 每个关系都有一个且只有一个主码(Primary Key)。 码的属性称为主属性,不包含在任何码中的属性称为非主属性。
10
E.F.Codd 博士
关系数据库之父 美国工程院院士
4
关系代数的基本术语
关系理论是建立在集合代数理论基础上的,有着坚实的数学基础
定义1: 域(Domain)是一组具有相同类型的值的集合(即 每个属性的取值范围)。

一组值的集合,这组值具有相同的数据类型
例:整数集合{0,1};长度小于5的字符串集合等都可以是域;全体实数的 集合。
CT
144 100 44
C4
C5 C6
数据结构
编译原理 操作系统
64
90 32
赵六
计算机
22
SC
SNO
96004
CNO
C3
GRADE
95
96004
96005 96005
C5
C2 C3
70
81 95
30
专门的关系运算
例1:求计算机系的学生。 σ
SDEPT=‘计算机’(S)
SNO
96001
96002 96003
主码
课程名 高等数学 数据结构 操作系统 数据库
外部码
学时数 100 70 80 60 0101 0101 0102 0104 0104 C01 C02 C04 C04 C03
外部码
学号 课程号 成绩 90 80 90 85 70
11
关系模式
关系模式是型,是对数据本身的特性描述 数据的结构 元组语义以及完整性约束条件 关系是值,是元组的集合 关系模式是用DDL定义的 包括:关系名,属性名以及属性域的类型和长度。
27
广义笛卡儿积
R ×S
例: R
A a1 a1 a2 B b1 b2 b2 B b2 b3 b2 C c1 c2 c1 D c2 c2 c1
S
A a1 a1 a2
A a1 a1 a1 a1 a1 a1 a2 a2 a2
B b1 b1 b1 b2 b2 b2 b2 b2 b2
C c1 c1 c1 c2 c2 c2 c1 c1 c1
关系R和S的并记为R∩S,结果仍为n度关系,由既属于R又属于S 的元组组成。
R
S R∩ S
R∩S=R–(R-S)
26
广义笛卡儿积
广义笛卡儿积
R是一个n度关系,S是一个m度关系。关系R和S的广义笛卡儿积记 为R×S,其结果是(n+m)度的关系,结果中的元组是R中元组和S中 元组连成的一串,前n个分量是R中的一个元组,后m个分量是S的一 个元组。假定R中有元组(r1,r2,…,rn),S中有元组(s1,s2,…,sm), 则结果中的元组为 (r1,r2,…,rn,s1,s2,…,sm)。若R有k1个元组,S有k2个元组,则R×S 有k1×k2个元组。
32
专门的关系运算
注意: 因为投影运算的属性表不一定包含关系的码,经投 影运算后,结果中很可能出现重复元组,消除重复元组 后所得关系的元组将小于等于原关系的元组数。如果属 性列中包含码,则不可能出现重复元组,投影运算后所 得关系的元组与原关系一样。 投影不仅会取消一些列,也可能取消某些行。但在 实际的SQL实现时要靠关键字来完成。
18
关系的完整性约束
职工表(EMP)
职工号 部门编号 姓名 … 9801 9802 9803 9804 9805 01 01 02 03 张三 李四 王五 赵六 钱七
部门表(DEPT)
部门编号 部门名称 …
01 02 03 04
经理办公室 人事部 公关部 技术部
外部关系码
关系主码
19
关系的完整性约束
22
传统的集合运算
定义1. 设给定两个关系R和S,若满足:具有相同的度n,且R中第i 个属性和S中第i个属性必须来自同一个域,则说关系R和S是相容的 。即:关系R和S有相同的度,即有相同的属性个数,且对应的属 性的域相同。 传统集合运算的两个关系必须是相容的。
约定:大写字母表示命名关系和关系的属性;小写字母表示元组。

12
关系模式
定义: 关系模型中的数据结构就是关系模式,即是对关系 的描述。它的形式化表示是一个5元组:R(U, D, dom, F)
其中,R:关系名; U:属性名集合; D:域,属性组U中属性所来自的域; F:属性间数据的依赖关系集合
dom:属性向域的映射;
关系模式通常可以简记为
R (U) 或
例3:选修(学号,课程号,成绩)
“学号”和“课程号”可能的取值 :
(1)选修关系中的主属性,不能取空值
(2)只能取相应被参照关系中已经存在的主码值
21
关系的完整性约束
(3)域完整性(用户自定义完整性)
规则:要求属性值必须取自其对应的值域。 例:学生的性别只能是:‘男’和‘女’ CONSTRAINT SX CHECK (性别 IN (‘男’,‘女’)
17
关系的完整性约束
例1:职工关系 EMP(ENO, ENAME, DNO)
部门关系 DEPT(DNO, DNAME)
在EMP中,DNO是外码。EMP中每个元组在DNO 上的值允许有两种 可能: ① 取空值。这说明这个职工尚未分配到某个部门; ② 若非空值,则DNO的值必须是DEPT中某个元组中的DNO值。表 示此职工不可能分配到一个不存在的部门。
例2:学生实体及其内部的联系
学生(学号,姓名,性别,专业号,年龄,班长)
学号 801 802 803 804 805 姓名 张三 李四 王五 赵六 钱七 性别 女 男 男 女 男 专业号 01 01 01 02 02 年龄 19 20 20 20 19 802 805 班长 802
20
关系的完整性约束
6
关系代数的基本术语
例:设有域
D1=姓名集合(NAME)={王三,丁平}; D2=职业集合(JOB)={工人,农民,商人}; D3=住址集合(ADDR)={北京,上海,广州};
则 D1×D2×D3 = {
(王三,工人,北京), (王三,工人,上海), (王三,工人,广州), (王三,农民,北京), (王三,农民,上海), (王三,农民,广州), (王三,商人,北京), (王三,商人,上海), (王三,商人,广州), (丁平,工人,北京), (丁平,工人,上海), (丁平,工人,广州), (丁平,农民,北京), (丁平,农民,上海), (丁平,农民,广州), (丁平,商人,北京), (丁平,商人,上海), (丁平,商人,广州)} D1、D2、D3 的基分别为2,3,3,所以笛卡儿积的基为 MD1×D2×D3 = 2×3×3=18;其度为3。
R: 关系名
R (A1,A2,…,An)
A1,A2,…,An : 属性名
如:STUDENT(SNO,SNAME,SEX,SAGE,DEPT)
13
关系模式与关系
关系的内涵和外延
关系的内涵是关系模式。它是静态的、稳定的,是对 关系的描述。 关系的外延是关系(的值)。任何给定的时刻,出现 在关系中的所有元组的集合,它是动态的、随时间变化的 ,反映了关系模式在某一时刻的状态或内容。
合集下载

第2章关系数据库设计理论PPT课件

第2章关系数据库设计理论PPT课件

R ABC 123 456 789
S ABC 123 258 704
T ABC 456 789
3、交运算(Intersection) 设有关系R和S,它们具有相同的关系模式,
并且对应属性的作用域相同,R与S的交运算结 果生成一个新的关系,由既属于R同时也属于S 的元组组成。记作:
R∩S={t|t∈R∧t∈S}
▲关系操作集合 ➢选择、投影、连接 ➢并、差、交、除 ➢插入、删除、更新、查询
▲关系的完整性约束 ➢关系模型的数据完整性是指数据库中数据的
正确性、相容性和一致性。 ➢数据的完整性由完整性规则来维护,关系模
型的完整性规则是对关系的某种约束,也称为完 整性约束。
➢完整性性约束是为了保证数据库中数据的完 整性对关系模型提出的某种约束条件和规则。
▲关键字(码、键)
能唯一识别一个元组的属性或属性的组合称为 该关系的关键字(在数据表中即为字段或字段的 组合)。
关键字可分为:
➢候选关键字(候选码)
如果一个关系关系中的一个关键字移去了其中 任何一个属性,它就不再是这个关系的关键字, 则称这样的关键字为该关系的候选关键字。
➢主关键字(主码)
一个关系中往往有多个候选关键字,若选定其 中一个用来唯一标识该关系的元组,则称这个被 指定的关键字为该关系的主关键字。
Select gh , xm , zc From js (2)从kc表中查询kcdm和kcmc信息。
Select kcdm , kcmc From kc
3、笛卡尔积运算(Cartrdisn Product)
若需对两个结构不同的关系模式进行合并操作,
则可以用笛卡尔积表示。设关系R有n个属性、p行
R ABC 123 456 789

第二章:关系数据库的理论基础资料

第二章:关系数据库的理论基础资料

投影运算
投影运算表示为:
A (R) {r.A | r R}
其中R是关系名,π是投影运算符,A是被投影的属性或属性集。
投影运算举例
订购单关系
选取职工号和供应商 号两列构成新的关系
π职工号,供应商号(订购单)
投影运算
选取运算是从关系的水平方向上进行运算的, 而投影运算则是从关系的垂直方向上进行的。
订购单关系
π供应商号,订购单号(σ职工号="E3"(订购单))
连接运算 19
连接运算是两个表之间的运算,这两个表通常是具有一对多联系 的父子关系。所以连接过程一般是由参照关系的外部关键字和被 参照关系的主关键字来控制的,这样的属性通常也称为连接属性。
连接(Join)
连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定 条件的元组。记作:
R S = { t | t = < r, s > rR sS r[B]=s[B]}
自然连接 21
自然连接是特殊的等值连接
等值连接:从两个关系(R、S)的笛卡尔积中选取属性 (A、B)值相等的元组 自然连接:在等值连接中取消重复属性
自然连接做了三件事:
计算广义笛卡尔积R×S ; 选择满足条件r[Ai]=s[Bj]的所有元组;
相 两个关系R和S若进行并,交,差运算,则它们必须是 容的:
系R和关系S具有相同的目n(即两个关系都有n个属性), 且相应的属性取自同一个域。
并运算 7/
定义
设R和S是n元关系,并且两者各对应属性的数据类型也相同。则R和S的并运算定 义为:RS ={ t |t R tS }
其结果仍为n元关系,由属于R或属于S的元组构成。
σSdept=‘IS’(Student) 或

02 关系数据库的基本理论

02 关系数据库的基本理论

2.2.4 关系系统
2.关系系统的分类 按照E.F.Codd的思想,可以把关系系统分 类如下: (1)最小关系系统 (2)关系上完备的系统 (3)全关系系统
2.2.4 关系系统
3.全关系系统的12条基本准则 【准则2-0】一个关系型的DBMS必须能完全通过 它的关系能力来管理数据库。 【准则2-1】信息准则。 【准则2-2】保证访问准则。 【准则2-3】空值的系统化处理。 【准则2-4】基于关系模型的动态的联机数据字典。 【准则2-5】统一的数据子语言准则。
第2章 关系数据库的基本理论
关系数据库系统具有独特的风格,概括起 来有以下五个特点。
(1)简单明了的数据模型。 (2)具有严谨的理论基础。 (3)实体表示方法和实体之间联系的表示 方法一致。 (4)处理多对多的联系方便。 (5)使用的关系数据语言功能强大。
2.1 关系模型概述
关系模型是关系数据库的基础。关系模型由数据 结构、关系操作集合和完整性约束三部分组成。 2.1.1 关系数据结构
其中,姓名、职称、X称为域名,姓名域和职称域各有4个值, X域有2个值,一般称它们的基数分别为4、4、2。
2.2.1 数学定义
【 定 义 2-2】 给 定 一 组 域 D1,D2,…,Dn , 则 D1×D2×…×Dn = { (d1,d2,…,dn) | d1∈Di , i = 1,2,…,n } 称 为 D1,D2,…,Dn 的 笛卡尔积。其中每个(d1,d2,…,dn)叫做一个n元组,元组中的 每个di是Di域中的一个值,称为一个分量。
表达(或描述)关系操作的关系数据语言 可以分为三类,具体分类情况如下:
2.1.2 关系操作
(1)关系代数 关系代数是用对关系的运算来表达查询要
求的方式。 (2)关系演算

第2章 关系数据库理论(3) 东南大学数据库课件

第2章 关系数据库理论(3) 东南大学数据库课件
12
本章重点
一、关系模型的基本概念
1.码: 1)候选码(键) 2)主键码(主键)
3)外码
2.关系模式的三类完整性规则
(1) 实体完整性规则 (2) 参照完整性规则 (3) 用户定义的完整性规则
二、关系代数
(a)传统的集合运算: 合并∪ 、相交∩ 、求差-(相减)、
笛卡尔积×
(b)扩充的关系运算: 选择σ 、投影π 、联接 、求商÷
5.检索学习课程号为C2的学生学号和姓名 πS#,SN(δC#=‘C2’(S SC)) πS#,SN(S δC#=‘C2’(SC)) πS.S#,SN(δC#=‘C2’∧ S.S#=SC.S#(S×SC))
8
6.检索选修课程号为C2或C4的学生学号 πS#(δC#=‘C2’ ∨ C#=‘C4’ (SC))
7. 检索至少选修两门课程的学生学号。
π1(δ1=4∧2≠5(SC×SC))
123456 S# C# G S# C# G
9
8.检索选修课程名为DB的学生学号和姓名 πS#,SN(δCN=‘DB’(S SC C))
πS.S#,SN(δCN=‘DB’ ∧ S.S#=SC.S# ∧ SC.C#=C.C# (S×SC×C))
号C#是外键,分别参照学生和课程关系中的主键
S#和C#。
学生关系模式 S(S#,SN,age,sex)的一个实例
S# SN age sex
S1
LI
17
M
S2 SHI 19
F
S3 LIU 21
F
S4 CHEN 20
M
课程关系模式 C(C#,CN,T)的一个实例
C#
CN
C1 MATHS
C2 PHYSICS

2 关系数据库系统理论基础PPT课件

2 关系数据库系统理论基础PPT课件

年龄 25 27 33 23 41
性别 男 女 男 女 男
部门号 Deno1 Deno2 Deno3 Deno2 Deno3
属性
元组
2.元组
二维表中的每一行数据总称为一个元组或记录。一个 元组是对应概念模型中一个实体的所有属性值的总称。 由若干个元组就可构成一个具体的关系,一个关系中不 允许有两个完全相同的元组。
学生(学号,姓名,性别,年龄,籍贯)
学生选课(学号,课程号,成绩)
2.1.3 关系数据模型的集合论定义
❖ 关系过来的,它有严格的 数学理论基础。
1.笛卡儿积 2.关系 3.关系模式
1.笛卡儿积
❖ 定义2.1 设有一个有限集合D1,D2,D3、…,Dn, 则在D1,D2,D3,…,Dn上的笛卡儿积 (Cartesian Product)为:
1.关系
每一个关系用一张二维表来表示,常称为表。每一个 关系表都有个区别于其他关系表的名称,称为关系名。关 系是概念模型中同一类实体及实体之间联系集合的数据模 型表示,如图2-1所示的员工人事数据表。
关系模式 关系
员工编号 430425 430430 430211 430121 430248
姓名 王天喜 莫玉 肖剑峰 杨琼英 赵继平
3.合成关键字
当某个候选关键字包含多个属性时,则称该候选关键 字为合成关键字(Composite key)。
4.主关键字
为关系组织物理文件存储时,通常选用一个候选关键 字作为插入、删除、检索元组的操作变量。这个被选 用的候选关键字称为主关键字(Primary key),有时 也称为“主码”。
5.主属性
1.超关键字
在一个关系中若通过一个属性集合的取值就能唯一确定 每一个元组,即该关系中所有元组在这个属性集合上的分量 是不同的,则称该属性集合为该关系的超关键字或者简称为 超键(super key)。因此超关键字具有唯一的标识性。

第2章 关系数据库基本原理课件

第2章  关系数据库基本原理课件
表2-1 关系模型示例
部门编号 部门名称 员工编号 员工姓名 性别 住址
D001 D001
D002 D003 D004
2021/6/28
总经理办 E001
总经理办 E002
市场部 E003
销售部 仓储部
E004 E005
钱达理

东风路78号
东方牧

五一北路25号
郭文斌

公司集体宿舍
肖海燕

公司集体宿舍
2021/6/28
22 22
2.3 关系模式的分解
例2-3 将R(员工号,姓名,工资)进行分解,使其满足1NF条 件。
假定R的工资属性由基本工资和岗位工资组成,直接用属 性集(基本工资,岗位工资)取代工资属性,得到新关系 R_NEW(员工号,姓名,基本工资,岗位工资),R_NEW满足 1NF。
(2)R符合1NF条件但不符合2NF条件时,分解R使其满足 2NF。
第2章 关系数据库基本原理
2021/6/28
11
本章内容
1.1 关系数据库基本原理 2.2 关系代数的基本原理 2.3 关系模式的分解 2.4 关系模型的完整性约束 2.5 数据库的设计方法
2021/6/28
22
2.1 关系数据库概述
关系数据模型
数据模型的任务是描述现实世界中的实体及其联系。关系 数据模型就是采用一个有序数组描述实体及其属性,用这种 有序数组的集合描述一个实体集合,而采用定义在两个集合 上的关系反映不同实体间的联系。
例如,设A={1,2},B={a,b},则A×B={(1,a),(1, b),(2,a),(2,b)}。
4.关系
关系是一个集合,其组成元素是元组而不是组成元组的 元素。

数据库原理 第二章:关系数据库

数据库原理第二章:关系数据库在数据库领域中,关系数据库是一个至关重要的概念。

它不仅是数据库管理系统的核心组成部分,也是众多应用系统存储和处理数据的基础。

关系数据库的基本概念是基于关系模型建立的。

那什么是关系模型呢?简单来说,关系模型把数据看作是一张张二维表格。

这些表格有着明确的行和列结构。

每一行代表一个数据记录,而每一列则代表一个数据属性。

比如说,我们有一个学生信息表,其中可能包含学号、姓名、年龄、性别、班级等列。

每一行就是一个具体学生的信息。

这种表格形式的设计使得数据的组织和管理变得清晰和规范。

关系数据库的一个重要特点是数据的完整性约束。

这意味着数据库中的数据必须满足一定的规则和条件,以确保数据的准确性和一致性。

例如,在学生信息表中,学号必须是唯一的,不能有两个学生拥有相同的学号。

年龄必须是合理的数值,不能是负数或者过大的数字。

性别只能是“男”或者“女”等。

这些约束条件有助于防止错误的数据进入数据库,保证数据的质量。

关系数据库中的关系运算也是非常关键的部分。

常见的关系运算包括选择、投影、连接等。

选择运算就像是从一个大表格中筛选出符合特定条件的行。

比如,我们要找出年龄大于 20 岁的学生记录,这就是一个选择运算。

投影运算则是从表格中选取特定的列。

假设我们只需要学生的学号和姓名,那么通过投影运算就可以得到只包含这两列的新表格。

连接运算用于将两个或多个相关的表格组合在一起,以获取更全面的信息。

比如,我们有一个学生成绩表和学生信息表,通过连接运算,可以将学生的基本信息和他们的成绩关联起来。

关系数据库的存储结构也是值得深入探讨的。

为了有效地存储和检索数据,关系数据库通常采用索引和存储引擎等技术。

索引就像是一本书的目录,它能够加快数据的查找速度。

当我们需要快速找到某个特定条件的数据时,索引能够帮助数据库系统快速定位到相关的数据行,而不必逐行扫描整个表格。

存储引擎则决定了数据在磁盘上的存储方式和管理策略。

不同的存储引擎有着不同的特点和适用场景,例如 InnoDB、MyISAM 等。

数据库课件第二章关系数据库


物理设计
根据逻辑设计结果,选择合适的存储结构和数据 库管理系统,进行物理存储和索引的设计。
数据库设计的ER模型
实体
表示客观存在的事物或对象,具有可区分性。
关系
表示实体之间的联系,包括一对一、一对多和多 对多关系。
属性
表示实体的特征和属性值,用于描述实体的具体 信息。
05 关系数据库的标准语言 SQL
关系数据库
contents
目录
• 关系数据库概述 • 关系模型 • 关系数据库的标准语言SQL • 关系数据库的未来发展
01 关系数据库概述
关系数据库的定义
关系数据库是一种基于关系模型的数 据库管理系统,它使用结构化查询语 言(SQL)来管理和操作数据。
THANKS FOR WATCHING
感谢您的观看
面向对象数据库系统
面向对象数据库系统是一种基于面向对象程序设计思想的数据库系统,它 支持复杂的数据类型和对象,能够更好地支持应用程序的开发。
面向对象数据库系统具有更好的可扩展性和灵活性,能够更好地支持复杂 的数据结构和业务逻辑,满足各种不同类型的应用需求。
随着软件技术的不断发展,面向对象数据库系统将得到更广泛的应用,成 为未来数据库发展的重要方向之一。
事务处理
关系数据库支持事务处理,能够保证 数据的完整性和一致性。
并发控制
关系数据库采用并发控制机制,支持 多个用户同时访问和操作数据。
关系数据库的体系结构
表格
二维表格,由行和列组成,每 一行代表一条记录,每一列代 表一个字段。
索引
用于快速检索数据的数据结构, 通过索引可以加快查询速度。
数据库
存储数据的集合,由多个表格 组成。
数据查询语言(DQL)用于从数据库中检索数据。

数据库原理2 关系数据库.ppt

属性,不同属性(列)给不同属性名;
3. 列的顺序可任意交换; 4. 任意两个元组不能完全相同; 5. 行的顺序可任意交换; 6. 每一分量是不可分的数据项。
记忆方法:三列两行一分量。
注意:在许多实际关系数据库产品中,基
本表并不完全具有这六条性质,例如, 有的数据库产品(如FoxPro)仍然区分 了属性顺序和元组的顺序;许多关系数 据库产品中,例如Oracle,FoxPro等,它 们都允许关系表中存在两个完全相同的 元组。
三种具有相同表达能力的抽象查询语言:
关系代数 元组关系演算语言 域关系演算语言
ISBL ALPHA,QUEL QBE
SQL则是介于关系代数和关系演算之间的 标准查询语言。
由IBM提出,是应用得最广泛的关系数据 库标准语言。
三. 关系的三类完整性约束条件 关系模型必须满足:实体完整性和参照完
整性约束。
则D1×D2×… ×Dn的基数为: |D1|×|D2|×… ×|Dn|
3. 关系
定义2.3 D1×D2×… ×Dn的任意子集叫 做在域D1,D2,… ,Dn上的关系,可记做:
R(D1,D2,… ,Dn),R为关系名,n是关系的 目或度(degree)。
注意:
1. 这里的“子集”是“任意子集”,包括 空集。

例如学生选课关系“选修(学号,课程号, 成绩)”中,“学号、课程号”为主码, 则“学号”和“课程号”都不能取空值, 而不是整体不为空。
实体完整性可以引申一下,主码也不能取 重复值。
有关实体完整性的说明:
(1)实体完整性规则是针对基本关系而言的。 一个基本表通常对应现实世界的一个实 体集。(名字怎么来的)
数据库系统原理(第2章)
第二章 关系数据库

第二章关系数据库基本理论-1


元组(Tuple)
表中的一行即为一个元组
属性(Attribute)
表中的一列即为一个属性,给每一个属性起一个名称
即属性名
关系数据模型的数据结构(续)
主码(Key)
表中的某个属性组,它可以唯一确定一个元组。
域(Domain)
属性的取值范围。
分量
元组中的一个属性值。
关系模式
对关系的描述 关系名(属性1,属性2,„,属性n) 学生(学号,姓名,年龄,性别,系,年级)
关系数据模型的优缺点(续)
缺点
存取路径对用户透明导致查询效率往往不如非
关系数据模型
为提高性能,必须对用户的查询请求进行优化
增加了开发DBMS的难度
2.2 关系代数
概述
传统的集合运算 专门的关系运算
概述
表2.1 关系代数运算符 运算符 含义 运算符 含义
方法:
将多对多联系直接分解成一对多联系
网状数据模型的数据结构(续)
例如:一个学生可以选修若干门课程,某一课程可以被 多个学生选修,学生与课程之间是多对多联系

引进一个学生选课的联结记录,由3个数据项组成
学号 课程号 成绩 表示某个学生选修某一门课程及其成绩
网状数据模型的数据结构(续)
学生/选课/课程的网状数据模型
网状数据模型的数据结构(续)
网状模型中子女结点与双亲结点的联系可以不唯一 要为每个联系命名,并指出与该联系有关的双亲记录和子 女记录
R1与R3之间的 联系L1 R2与R3之间的 联系L2
网状数据模型的数据结构(续)
网状模型的例子
网状数据模型的数据结构(续)
多对多联系在网状模型中的表示
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档