postgres两条结果集合并无法区分那个表的数据结果集_数据库系统教程notes

本文详细介绍了数据库管理的发展,强调了数据库系统相对于文件系统的优点,如数据一致性、恢复能力和权限控制。讲解了数据、数据模型与数据模式的概念,包括层次、网状和关系数据模型,重点阐述了关系数据模型的属性、键和约束。此外,还讨论了传统数据库的不足和非传统数据模型如ER模型。
摘要由CSDN通过智能技术生成

1.1 数据库管理的发展

数据库:非常大的,集成的数据集合;企业相关数据的集合,用于支持应用开发。对现实进行建模(数据模型),并存储在计算机中。

数据管理系统:系统软件,存储和管理数据库。

文件系统 vs 数据库系统:

  1. 操作系统的文件管理的功能有限(create,open,read,write,lseak文件读写指针);DBMS底层基础性工作(包括:内外层数据交换,数据缓冲,面向物理块存取,寻址,查询算法等)。
  2. 文件需要定制代码去查询不同的文件。
  3. 数据库可以保证在大量用户并发同时访问时数据一致,文件不可以。
  4. 数据库可以在故障时恢复数据,文件不可以。
  5. 数据库可以设置更加精细的权限控制和访问控制。
  6. 数据库系统建立在操作系统的文件系统之上。

1.2 数据库系统

3a46a9a0c80a83c0a1bf3e44d4a42234.png

DBMS的优点:

  • 高级的用户接口:用户只需利用非过程数据库语言,提出数据需求,而无需了解数据的物理存储。
  • 查询处理和优化
  • 数据独立性和有效访问
  • 节省应用开发的时间
  • 数据完整性约束(数据在语义上的约束)检查和安全性(访问权限控制)
  • 统一的数据管理
  • 并发访问,数据故障恢复

1.3 数据、数据模型与数据模式

数据:symbols for describing the things of the real world,existing form of information;

数据模型:描述数据的方法,如层次模型、网状模型、关系模型等;(C语言)

  1. 数据的静态特性:数据的基本结构、数据间的联系和数据的约束;
  2. 数据的动态特性:定义在数据上的操作。
  • 概念数据模型,conceptual:面向用户,主要用来描述现实世界;
  • 逻辑数据模型,logical:面向用户和面向实现的折衷,用户从数据库看到的数据模型,与DBMS有关;
  • 物理数据模型,physical:反映数据的存储结构,与DBMS、操作系统和硬件有关。

数据模式,schema:用某种数据模型,对特定数据集进行描述的结果。(编出来的程序)

三级模式:

  • 内模式/物理模式:数据在计算机上是如何存储的(堆,Hash,?)
  • 逻辑模式/概念模式:基表(以某种结构存储在磁盘上)
  • 外模式/视图模式:不同的用户看到的数据不同(基表映射出来的不同视图)

1.4 数据库的生命周期

数据库系统的生命周期

规划→设计→建立→加载数据→运行,管理,维护→扩展与重构


2.1 层次数据模型

Hierarchical Data Schema

基本概念:

98786cf411da7ba40bf7b5abd4ef261e.png

特点:

  • 层次数据模型存在多个PCRs;
  • 每个记录类型只能有一个父节点;
  • 每个PCR只能描述一个1:N的关系;

缺点:①多对多,②多个父节点,③多元联系无法表达

解决:虚记录(指针)

2.2 网状数据模型

基本概念:

95170136c91761947dc21351edd1e3d2.png

130c5e1f3a33bcffd0806a09ba6b831a.png

2.3 关系数据模型

2.3.1基本概念

属性和域

88105ba369bf6827bd99186096f80b4c.png

关系和元组

关系(形):R=(A1/D1,A2/D2,…,An/Dn)或R=(A1,A2,…,An)

n ,Ai 属性名,Di 域domian。

91ca0e4a337b3f79b82e26227e9c063a.png

  • 候选键,candidate key:唯一决定元组的最小的属性集合,可能有多个。(id)
  • 超键,super key:唯一决定元组但非最小的属性集合。(id,name)
  • 主键,primary key:指定一个候选键为主键,其他的候选键为次键,alternate key。注:若主键包含了关系中的全部属性,称之为全键,all key。
  • 外键,foreign key:被引用表的主键,逻辑指针。注:参考完整性,指针不能荡空。

2.3.2约束

  1. 域完整性约束,domain integrity constraint:每个值符合该属性定义的值域;
  2. 实体完整性约束,entity integrity constraint:主键的属性值不能为空;
  3. 引用完整性约束,referential integrity constraint:外键要么空缺,要么引用实际存在的主键值。
  4. 一般完整性约束(个别数据说明)

2.3.3操作

关系专用操作的优先级(一元操作:选择投影>>二元操作,连接)高于集合操作(交并差,笛卡尔积)。

59eedab734256978affd0a6947701421.png

379d99de73e2683ecabc40e830088c07.png

最小关系系统:支持选择,投影,连接;

关系完备系统:支持选择、投影,连接,差,并,所有的关系代数操作;

全关系系统:支持所有关系模型的特征。

2.3.4关系演算

a.元组关系演算 TCR

081025d0003a30dbfd67b7ee9c36137b.png

b.域关系演算 DCR

域变量

,其中n个出现在结果中,其他m个未出现在结果中,但出现在谓词P中。

关系演算和关系代数的比较:

6bccdb37e41caaceace057f898b452b2.png

2.4 传统数据库的不足

层次、网状、关系数据模型是三大传统数据模型。

  1. 以记录为基础,不能很好地面向用户和应用;
  2. 关系模型是通过公共属性或一个表示联系的关系来体现实体间的联系,不是很自然;
  3. 缺乏语义信息;
  4. 数据类型太少,难以满足应用需要。

2.5 非传统数据模型

ER模型

  • 实体(entity):可区分的对象表达为实体;
  • 弱实体(week entity):为其他实体所有的实体,如职工的家属,特点:不能独立存在,不一定有自己的实体键;
  • 属性(attribute):由一组属性描述(允许复合类型和多值属性);
  • 联系(relationship):用实体组成的元组表示,
  • 实体集(如,所有学生,所有雇员)
  • 联系集(同类联系)
  • 基数比约束(Cardinality Ratio Constraints):一对一,一对多,多对多
  • 参与度约束(Participation Constraints):表示形式为(min,max),若min>0为全参与,min=0为部分参与。

ER图

广泛用于数据库的概念设计,概念模型表示实体关系,独立于实际的DBMS。

实体——长方形,属性——椭圆形,联系——菱形。

扩展ER模型

  1. 特殊化(Specialization)与普遍化(Generalization):类似父类与子类的继承
  2. 聚集(aggregation),允许实体集间的联系作为实体,再与其他实体发生联系
  3. 范畴(category),由不同类型实体组成的集合,银行个人账户,公司账户

3.1 数据库的用户接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值