7.1关系数据库概述

简介: 7.1关系数据库概述

思维导图:

相关名词

1、关系:在关系数据库中,实体以及实体间的联系都是用关系来表示的。类似于程序设计语言中变量的概念。

2、关系模式:是对关系的描述。类似于程序设计语言中类型定义的概念。

3、关系模型:是由若干个关系模式组成的集合。

4、属性:用来描述某一个事物的特征。

5、域:每个属性的取值范围所对应一个值的集合。

6、候选码:若关系中的某一属性或属性组的值能唯一标识一个元组,则称该属性或属性组为候选码。

7、主码:又称为主键,若一个关系有多个候选码,则选定其中一个为主码。

8、主属性:包含在任何候选码中的各个属性称为主属性。

9、非主属性:不包含在任何候选码中的属性称为非主属性。

10、外码:如果关系模式R中的属性或属性组非该关系的码,但它是其他关系的码,那么该属性集对关系模式R而言是外码

11、全码:关系模型的所有属性组是这个关系模式的候选码,称为全码。

12、元组/记录:

13、字段、数据项(属性)

14、元数:属性的个数,字段(列数)(如有4列,就称为四元关系),并不是元组的个数

15、基数:记录的个数,也就是元组的个数(行数)

16、n元关系:元数为几,就是几元关系。

关系数据库模式

• 关系模式可以表示为:

R(U,D,dom,F)

• R表示关系名,U是组成该关系的属性名集合;D是属性的域;dom是属性向域的映像集合;F为属性间数据的依赖关系集合。

通常将关系模式简记为:

R(U)或 R(A 1 ,A 2 ,A 3 , … ,A n )

其中,R为关系名,A 1 ,A 2 ,A 3 , … ,A n 为属性名或域名。

例:学生关系S有学号Sno、学生姓名Sname、系名SD、年龄SA属性;课程关系C有课程号Cno、课程名Cname、先修课程号PCno属性;学生选课关系SC有学号Sno、课程号Cno、成绩Grade属性。定义关系模式及主码如下(未考虑F,即属性间的依赖关系)。

(1)学生关系模式S(Sno,Sname,SD,SA)

(2)课程关系模式C(Cno,Cname,PCno),Dom(PCno)=Cno,PCno是先修课程

(3)学生选课关系模式SC(Sno,Cno,Grade)


关系的三种类型

(1)基本关系(基本表或基表):它是实际存在的表,是实际存储数据的逻辑表示。

(2)查询表。查询结果对应的表。例:select *  from S where Sex='男‘ 查询出来的所有男生的结果,都显示出来的表

(3)视图表。它是一种虚拟表,是由基本表或其他视图表导出的表。它本身是不独立存储在数据库的,数据库只存放它的定义。

关系的完整性约束

关系的完整性约束:是对关系的某种约束条件,用来保证用户对数据库作出修改时不会破坏数据的一致性,防止对数据的意外破坏。

(1)实体完整性:是指基本关系R的主属性不能取空值

(2)参照完整性:例如:在s表中的所属院系中的编号必须来自于D表中的院系编号

• S(学号,姓名,所属院系,年龄) (注:此处的所属院系记录的是院系编号)

• D(院系编号,学院名称,学院地址,系主任)

(3)用户定义完整性:是针对某一具体的关系数据库的约束条件,反映某一具体

应用所涉及到的数据必须满足的语义要求。如规定工资必须大于2000元。

例题:

1 、 15 年第 29 题

若关系 R ( H , L , M , P )的主键为全码( All-key ),则关系 R 的主键应( )。

A. 为 HLMP

B. 在集合 {H , L , M , P} 中任选一个

C. 在集合 {HL , HM , HP , LM , LP , MP} 中任选一个

D. 在集合 {HLM , HLP , HMP , LMP} 中任选一个

注意:全码的概念:所有的属性所构成的属性组称为全码

2 、 16 年第 47 题

下列关于关系的描述中,正确的是( )。

A. 交换关系中的两行构成新的关系

B. 关系中两个列的值可以取自同一域

C. 交换关系中的两列构成新的关系

D. 关系中一个列可以由两个子列组成

注:B中的意思是两个属性的值可以取自同一个域,如职工电话和家长电话是可以取自同一个域的

交换两行和两列都构不成新的关系,关系中的列都是不可再分的

3 、 20 年第 33~34 题

关系型数据库是( )的集合,表是( )的集合。

A. 表 B. 记录 C. 码 D. 属性

A. 约束 B. 记录 C. 码 D. 索引

注:记录指的是一个关系中的一行,故每张表是记录的集合

4 、 20 年第 35 题

属性指的是表中的一个( )。

A. 记录 B. 列 C. 元组 D. 码

注:属性指的是表中的一列


5 、 20 年第 37 题

在一个关系表中,一个表的行代表( )。

A. 关系 B. 外码 C. 元组 D. 属性

注:一行就是一个元组

6 、 20 年第 38 题

关系的完整性约束不包含( )。

A. 实体完整性 B. 参照完整性 C. 属性完整性 D. 用户定义完整性

注:完整性约束包括:1.实体完整性。2.参照完整性。3.用户定义完整性

7 、 20 年第 39 题

在一个关系型数据库中,参照完整性约束可以通过( )来实现。

A. 主码 B. 候选码 C. 外码 D. 锁

注:如学生表中的所属学院编号和学院表中学院编号是要有约束的,所以是外码实现的

8 、 20 年第 40 题

关系型数据库中常用的查询语言不包括( )。

A. 域关系演算 B. 元组关系演算 C. 导航式语言 D. 关系代数

9 、 20 年第 41 题

一个取值域是原子的,是指该域的元素是( )单元。

A. 不同的 B. 不可分的 C. 常量 D. 不可见的

非原子数据:数组,集合,原子的:不可再分的


相关文章
|
7天前
|
SQL 存储 关系型数据库
关系型数据库涉及到的问题
深入了解特定数据库系统的特性和最佳实践是非常重要的。
15 4
|
4月前
|
存储 NoSQL 关系型数据库
数据库系统设计概述
数据库系统设计概述
35 0
|
4月前
|
存储 NoSQL 关系型数据库
关系型数据库&非关系型数据库概述
关系型数据库&非关系型数据库概述
34 2
|
9月前
|
SQL 存储 NoSQL
关系型数据和非关系型数据库概述
关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织。 非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。
197 3
关系型数据和非关系型数据库概述
|
存储 SQL 缓存
NoSQL概述
NoSQL概述
205 1
NoSQL概述
|
存储 SQL Oracle
关系型数据库规范| 学习笔记
快速学习关系型数据库规范
170 0
|
SQL 存储 JSON
第1期 全栈开发关系数据库与非关系数据库的区别
我们常常遇到的数据库有关系数据库和非关系数据库,MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。它们各有各的优点。所以我们所熟知的那些SQL语句就不适用于MongoDB了,因为SQL语句是关系型数据库的标准语言。今天小编就带着大家一起学习下关系数据库和非关系数据库,
133 0
|
存储 关系型数据库 MySQL
|
SQL 存储 NoSQL
NoSQL 简介
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。
130 0
|
SQL NoSQL 安全
数据库面试题【十、【非关系型数据库】和【关系型数据库】的【区别】与【优势比较】】
数据库面试题【十、【非关系型数据库】和【关系型数据库】的【区别】与【优势比较】】
183 0