湟源县公司网站建设,常德网站建设网站优化,网店托管代运营费用多少钱,自己建免费网站第二章 关系数据库
2.1关系数据结构及形式化定义
关系
域#xff08;domain) :域是一组具有相同数据类型的值的集合#xff0c;可以取值的个数叫基数
笛卡尔积 #xff1a;一个记录叫做一个元组#xff08;tuple),元组中每一个属性值#xff0c;叫一个分量
基数…第二章 关系数据库
2.1关系数据结构及形式化定义
关系
域domain) :域是一组具有相同数据类型的值的集合可以取值的个数叫基数
笛卡尔积 一个记录叫做一个元组tuple),元组中每一个属性值叫一个分量
基数 域的元素个数 笛卡尔乘积是指在数学中两个集合X和Y的笛卡尔积表示为X×Y所有有序对 假设集合A{a, b}集合B{0, 1, 2}则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。 基数为2 x 36 关系 关系是笛卡尔积的子集每一行对应一个元组每一列对应一个域列名叫做属性attribute) R是表的名字n是属性个数叫做关系的目或度degree) 候选码(candidate key) 某一属性组的值能唯一标识一个元组而他的子集不能则称该属性组为候选码。
主码(primary key) 若一个关系有多个候选码则选定其中一个为主码。
主属性 属于候选码的属性叫主属性。其他属性叫非主属性或非码属性
全码 若关系模式的所有属性都是这个关系模式的候选码称为全码。
外码依赖于另一个关系的主码
关系的三种类型
基本关系基本表/基表实际存在的表查询表查询结果对应的表视图表是由基本表或其他视图表导出的表是虚表不对应实际存储的数据
基本关系的6条性质
列是同质的。同一数据类型不同的列可以出自同一个域不同的属性要有不同的属性名列的顺序无所谓。任意两个元组的候选码不能取相同的值。行的顺序无所谓。分量必须取原子值每一个分量都不可分。
关系模式 或者表示为R(U,D,DOM,F) R关系名。 U组成该关系的属性名的集合。 D: U中的属性所来自的域。 DOM属性向域的映像集合。 F属性见数据的依赖关系集合。 关系是关系模式在某一时刻的状态或内容
关系模式是静态的、稳定的而关系是动态的随时间不断变化的。
关系数据库
关系数据库的型就是关系数据库模式
关系数据库的值就是关系数据库模式在某一时刻对应的关系的集合
2.2关系操作
特点集合操作方式操作对象和结果都是集合 也称为一次一集合的方式非关系数据库模型的操作方式则成为一次记录的方式 关系数据语言的分类
代数方式关系代数用关系的运算来表达查询要求逻辑方式关系演算用谓词来表达查询要求 元组关系演算域关系演算 以上三种方式在表达能力上是等价的都具有完备的表达能力它们是抽象的查询语言。与实际的查询语言并不完全一样但它们能用作评估实际系统中查询语言能力的标准或基础 具有关系代数和关系演算双重特点的语言SQL(Structured Query Language
SQL是集查询DQL),数据定义语言DDL),数据操纵语言DML)和数据控制语言DCL)于一体的关系 数据语言
2.3关系的完整性
关系模型中有三类完整性约束实体完整性参照完整性和用户定义完整性。 前两个是关系模型必须满足的 实体完整性
若属性A是基本关系R的主属性那么A不能取空值。
参照完整性
若属性或属性组F是关系R的外码 它与基本关系S的主码K相对应则对于R中的每个元组在F上的值必须
或者等于空值F的每个属性均为空。或者等于S中某个元组的主码值。
用户定义完整性
用户自定义完整性是针对某一具体关系数据库的约束条件它反映某一具体应用所涉及的数据必须满足的语义要求。 主要包括非空约束、唯一约束、检查约束、主键约束、外键约束。
2.4 关系代数
关系代数是一种抽象的查询语言他用对关系的运算来表达查询
三要素 运算对象一种关系运算符运算结果一种关系 传统的集合运算
并Union)
R和S 具有相同的目n即两个关系都有n个属性 相应的属性取自同一个域
R∪S 仍为n目关系由属于R或属于S的元组组成 R∪S{t∣t∈R∨t∈S}R∪S \{ t|t \in R∨t \in S \} R∪S{t∣t∈R∨t∈S}
差difference)
R和S 具有相同的目n 相应的属性取自同一个域
R - S 仍为n目关系由属于R而不属于S的所有元组组成 R−S{t∣t∈R∧t∉S}R -S \{ t|t\in R∧t \notin S \} R−S{t∣t∈R∧t∈/S}
交intersection)
R和S 具有相同的目n 相应的属性取自同一个域
R∩S 仍为n目关系由既属于R又属于S的元组组成 R∩S{t∣t∈R∧t∈S}R∩SR–(R−SR∩S \{ t|t \in R∧t \in S \} \\ R∩S R –(R-S R∩S{t∣t∈R∧t∈S}R∩SR–(R−S
笛卡尔积
严格地讲应该是广义的笛卡尔积Extended Cartesian Product R: n目关系k 1 个元组 S: m目关系k2 个元组
R×S 列nm列元组的集合 元组的前n列是关系R的一个元组 后m列是关系S的一个元组 行k1 × k2 个元组 R×S{trts^∣tr∈R∧ts∈S}R×S \{\widehat{tr \ ts} |tr \in R ∧ ts \in S \} R×S{tr ts∣tr∈R∧ts∈S}
专门的关系符运算
选择selection) 关系代数中 表示不等于 投影project) 如果有重复的要去掉
连接join)
也称为θ-连接 DBMS在进行连接操作的时候不会先生成笛卡尔积因此效率更高 对自身的连接要用到更名 等值连接
当θ为“” 时称为等值连接
自然连接
自然连接是一种特殊的等值连接
在自然连接中被舍弃的元组被称为悬浮元组
外连接
如果把悬浮元组保留在结果关系中,而在其他属性上填空值null,那么这种链接就叫做外连接
除divide S 可以有R没有的属性 R ÷ S 和 S 的笛卡尔积 是 R 和S 自然连接 的子集 2.5关系演算
关系元组演算 关系域演算