这章较为简略,还是要看着表的例子来学习,尤其关系代数多做题才行
2.1 关系数据模型
2.1.1关系数据模型概述
1)数据模型:描述数据,数据间的关系,对数据的约束的有关概念。数据模型包括数据结构,数据完整性约束规则,数据运算三个部分。其目的是提供一个框架,在此基础上,实现数据操作简单,做到数据正确,完整,安全。
2)关系数据模型:关系来自数学的概念,通俗的说法就是表。
3)数据结构:二维表
4)数据完整性约束规则:实体,引用,域,约束规则
5)数据运算:关系代数
2.1.2关系数据模型的特性
1)专一性:数据严格按类分表保存
2)全局性:一个数据在数据库中只存一份,不能重复存储,一个类只对应一个表。
3)联系性:表与表之间有联系(通过主键与外键)
2.2实体完整性约束
其实就是主键约束,主键不能重复且不能为空,主键的确定要精准其包含的列不能多也不能少
当用户往一个表中添加一行数据时,可能它已经在表中存在,当对已有行进行修改时,改后的行与表中已有行出现重复,DBMS就会拒绝。
2.3引用完整性约束
其实就是外键约束,在含有外键的约束中,添加行数据或者修改已有行数据中的外键字段的值时,DBMS要检查,看是否会违背外键约束。一个表如果被别的表引用了,那么在删除行数据或修改行数据中的主键字段时要执行连带操作,维系关系。在定义表时,不能遗漏外键
2.4域约束和业务规则约束
域约束:在表的模式中,每个字段都有数据类型和取值范围的约束
业务规则约束:数据库中的数据要求完整,也就是必须满足业务规则要求(用触发器来实现)
2.5关系代数
一元运算:(摘取部分)
选择σ:对行进行操作,格式σ条件(表名)
投影π:对列进行操作,格式π字段名(表名)
二元运算(格式:表名 符号 表名):
横向连接:
笛卡尔乘积×:两个表的所有组合,行*行,列+列,如果出现同名字段要改名
自然连接⋈:两个表期中一个表的主键是另一个表的外键,将含有外键的表外键字段扩展为详细字段,没有产生联系的行就不会出现在结果中,顺序很重要,主要是主键与外键
纵向连接:
并⋃:类似于概率论里的并
减-:类似于概率论里的减
交⋂:类似于概率论的交
除÷:两个表做除法,首先去除共同的列,然后再找出包含除数位置上共同字段数据均包含在被除数表的所有行并去重显示。
目录