数据库基础复习

关系模型

关系模型是指用二维表的形式表示实体和实体间联系的数据模型。
关系模型中无论是实体还是实体间的联系均由单一的结构类型——关系来表示。
关系模型组成
1.关系模型的基本数据结构就是关系。
2.关系运算分为关系代数和关系演算。
3.关系模型的三类完整性规则。
关系模型优点
1.数据结构单一
关系模型中,不管是实体还是实体之间的联系,都用关系来表示,而关系都对应一张二维数据表,数据结构简单、清晰。
2.关系规范化,并建立在严格的理论基础上
构成关系的基本规范要求关系中每个属性不可再分割,同时关系建立在具有坚实的理论基础的严格数学概念基础上。
3.概念简单,操作方便
关系模型最大的优点就是简单,用户容易理解和掌握,一个关系就是一张二维表格,用户只需用简单的查询语言就能对数据库进行操作。

关系模型的基本概念

关系模式与关系:关系是一种规范化的表格,是元组的集合。关系模式是对关系的描述。关系模式是型,关系是它的值,关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,关系实际上就是关系模式在某一时刻的状态或内容。
元组:二维表的行
属性:二维表的列
:属性值的取值范围
键(码):如果在一个关系中存在唯一标识一个实体的一个属性或属性集称为实体的键,即使得在该关系的任何一个关系状态中的两个元组,在该属性上的值的组合都不同。
候选键(码):若关系中的某一属性或属性组的值能唯一的标识一个元组,而其任何、子集都不能再标识,则称该属性组为候选码。
主码 : 主码也叫主键。主码是从候选码中选出来的。 一个实体集中只能有一个主码,但可以有多个候选码。
外码 : 外码也叫外键。如果一个关系中的一个属性是另外一个关系中的主码则这个属性为外码。

关系代数

关系代数是以关系为运算对象的一组高级运算的集合。


  • 设有两个关系R和S具有相同的关系模式,R和S的并是由属于R和S的元组构成的集合,记为R∪S。
    注意:R和S的元数相同。

  • 设有两个关系R和S具有相同的关系模式,R和S的差是由属于R但不属于S的元组构成的集合,记为R-S。
    注意:R和S的元数相同。
  • 笛卡尔积
    设关系R和S的元数分别为r和s。定义R和S的笛卡尔积是个(r+s)元的元组集合,每个元组的前r个分量(属性值)来自R的一个元组,后s个分量来自S的一个元组,记为R×S。
    若R有M个元组,S有n个元组,则R×S 有m×n个元组。
  • 选择
    从关系中找出满足给定条件的所有元组称为选择。经过选择运算得到的结果能形成新的关系,其关系模式不变,但其中元组的数目小于或等于原来的关系中的元组的个数,他是原关系的一个子集。
  • 投影
    从关系中挑选若干属性组成的新的关系称为投影。这是从列的角度进行运算。经过投影运算能得到一个新关系,其关系所包含的属性个数往往比原关系少,或属性的排列顺序不同。

关系模型的完整性规则

  • 域完整性:指属性的取值范围,如性别取值应为男或女。
  • 实体完整性:表中的所有行都有一个唯一标识符。这个唯一标识符可能是一列,也可能是几列的组合,称为主键。
  • 参照完整性:是指保证主关键字(被引用表)和外部关键字(引用表)之间的参照关系。它涉及两个或两个以上表数据的一致性维护。外键值将引用表中包含此外键的记录和被引用表中主键与外键相匹配的记录关联起来。

数据库范式

要想设计—个好的关系,必须使关系满足一定的约束条件,满足这些约束要求的规范称为范式

  • 第一范式
    所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项
  • 第二范式
    在1NF的基础上,非码属性必须完全依赖于候选码(消除非主属性对主码的部分函数依赖)
  • 第三范式
    在2NF基础上,任何非主属性不依赖于其它非主属性(消除传递依赖)

反范式:范式的优点是明显的,它避免了大量的数据冗余,节省了存储空间,保持了数据的一致性。但是范式越高意味着表的划分更细,一个数据库中需要的表也就越多,用户不得不将原本相关联的数据分摊到多个表中。当用户同时需要这些数据时只能采用连接表的形式将数据重新合并在一起,表连接操作几乎是一个噩梦,这严重地降低了系统运行性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值