C/C++教程

SCAU SQL 第二章

本文主要是介绍SCAU SQL 第二章,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

关系数据库

关系数据库系统是支持关系模型的数据库系统

关系模型是由关系数据结构、关系操作集合和关系完整性约束三部分组成

1.Domain 域
Domain是指一组具有相同数据类型的值的集合

2.Cartesian product 笛卡尔积

3.Relation 关系
例如:一个名为student的表有name,age,class属性,则这个关系表示为
student(name,age,class)

若某关系中的某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码(candidate key)
若一个关系中有多个候选码,则选其中一个为主码(primary key)
关系模式下所有属性是这个关系模式的候选码,称为全码(all-key)

关系有三种类型:基本关系、查询表、视图表

基本关系的六个性质:
(1)列是同质的,既每一列中的分量为同一类型的数据,来自同一个域。
(2)不同的列可出自同一个域,称其中的每列为一个属性,不同的属性的要给予不同的属性名。
(3)列的顺序无所谓,即列的次序可以任意交换。
(4)任意两个元组不能完全相同。
(5)行的顺序无所谓,即行的次序可以任意交换。
(6)分量必须取原子值,即每一个分量都必须是不可分的数据库。

关系模式

R(U,D,dom,F)
其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,dom为属性向域的映象集合,F为属性间数据的依赖关系集合。
通常简记为:
R(U)或R(A1,A2,…,An)
其中R为关系名,U为属性名集合,A1,A2,…,An为各属性名。

关系操作

常用的关系操作包括查询(query)和插入(insert)、删除(delete)、修改(update)操作两大部分
查询操作又可以分为选择(select)、投影(project)、连接(join)、除(divide)、并(union)、差(expect)、交(intersection)、笛卡尔积
其中选择、投影、并、差、笛卡尔积是五种基本操作

关系数据语言的分类

分别为关系代数(relational- algebra)和关系演算(regional calculus)

关系的完整性

关系模型中有三类完整性约束:
实体完整性、参照完整性、用户自定义完整性

实体完整性:若属性A是基本属性的主属性,则A不能为空值
参照完整性:若属性F是基本关系R的外码,它与基本关系S的主码K相对应,则对于R中每个元组在F上的值要么为空值,要么等于S中某个元组的主码值。
用户自定义的完整性:用户可以根据实际状况自定义约束条件

关系代数

这篇关于SCAU SQL 第二章的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!