三、数据库系统(考点篇)

1、三级模式一两级映像

内模式:管理如何存储物理的 数据 ,对数据的存储方式、优化、存放等。
模式:又称为概念模式 就是我们通常使用的表这个级别 ,根据应用、需求将物理数据划分成一张张表。
外模式: 对应数据库中的视图这个级别 ,将表进行一定的处理后再提供给用户使用,例如,将用户表中的用户名和密码组成视图提供给登录模块使用,而用户表中的其他列则不对该模块开放,增加了安全性。
外模式的视图级别不是单纯的数据库的view,举例说明
1.select a.*,b.* from a,b where a.id=b.id,这种查询展示的结果也是视图级别
2.比如a表有3个字段,name,age,sex,select name,age from a这种查询展示的结果也是视图级别
  
外模式一模式映像:是表和视图之间的映射,存在于概念级和外部级之间, 若表中数据发生了修改,只需要修改此映射,而无需修改应用程序
模式一内模式映像:是表和数据的物理存储之间的映射,存在于概念级和内部级之间, 若修改了数据存储方式,只需要修改此映射,而不需要去修改应用程序
  
以上的数据库系统实际上是一个分层次的设计,从底至上称为物理级数据库(实际为一个数据库文件)、概念级数据库、用户级数据库,各层情况如下:

2、数据库的设计

(1)需求分析:即分析数据存储的要求产出物 数据流图、数据字典、需求说明书 。获得 对系统的三个要求 信息要求、处理要求、系统要求
信息要求主要涉及用户在系统中需要 保存哪些信息,这些信息能够 提供什么样的具体内容,以及 信息间的完整性要求。
处理要求关注系统需要 实现哪些功能如何处理保存的信息,包括各种操作的频率、响应时间、安全性等。
系统要求则包括系统的安全性、可扩展性、用户友好性等方面。
  • 安全性要求保护用户数据和系统不被未经授权的访问
  • 可扩展性要求系统能够随着业务增长进行升级和扩展
  • 用户友好性要求系统界面直观易用,适合不同用户的操作习惯‌
(2)概念结构设计:就是设计 E-R图,也即实体-联系图,与物理实现无关,就是说明有哪些实 体,实体有哪些属性 工作步骤包括:选择局部应用、逐一设计分 E-R图、E-R图合并 -- 局部应用,分ER图,ER合并。
分E-R 图进行合并时,它们之间存在的冲突主要有以下3 类。
  • 属性冲突(重复)同一属性可能会存在于不同的分E-R 图中,由于设计人员不同或是出发点不同,对属性的类型、取值范围、数据单位等可能会不一致。
  • 命名冲突(同义不同名)相同意义的属性,在不同的分E-R 图上有着不同的命名,或是名称相同的属性在不同的分 E-R 图中代表着不同的意义。
  • 结构冲突(结构不同)同一实体在不同的分 E-R 图中有不同的属性,同一对象在某一分 E-R 图中被抽象为实体而在另一分E-R 图中又被抽象为属性。
(3)逻辑结构设计将 E-R 图,转换成关系模式,也即转换成实际的表和表中的列属性,这里要考虑很多规范化的东西。 工作步骤包括:确定数据模型、将E-R 图转换成为指定的数据模型、确定 完整性约束和确定用户视图 -- 定模型,ER转模型,定约束和视图。
---转换为逻辑结构模型,逻辑结构模型包含很多内容,不只是关系模式、还有层次模式、网状模式等等,关系模式只是逻辑结构模型的经典。
(4)物理设计:根据生成的表等概念,生成物理数据库 工作步骤包括确定数据分布、存储结 构和访问方式 --定下数据分布、存储结构、访问方式
---表里的数据如何存储,如hash存储方式,顺序存储方式,如何访问等等,
具体各个设计阶段的产出物、要求等如下所示:
需求分析:数据流图、数据字典、需求说明书。
概念结构设计:E-R模型(用户的数据模型),与DBMS无关的概念模型。
逻辑结构设计:关系模式、视图、完整性约束、应用处理说明书
第(5)和(6)没有考点不重要
(5)数据库实施阶段。数据库设计人员根据逻辑设计和物理设计阶段的结果建立数据库,编制
与调试应用程序,组织数据入库,并进行试运行。
(6)数据库运行和维护阶段。数据库应用系统经过试运行即可投入运行,但该阶段需要不断地
对系统进行评价、调整与修改。

3、E-R模型

数据模型的三要素 数据结构数据操作数据的约束条件
在 E-R模型中,使用椭圆表示属性(一般没有)、长方形表示实体(多线的是强弱实体)菱形表示联系,联系的两端
要填写联系类型,示例如下图:
联系类型:一对一1:1、一对多1:N、多对多M:N。
        
属性分类简单属性和复合属性(属性是否可以分割)、单值属性和多值属性(属性有多个取值)
NULL属性(无意义)派生属性(可由其他属性生成)。
  
那么 E-R模型如何转换为关系模型呢(实际就是转换为多少张表)?
  • 每个实体都对应一个关系模式;
  • 联系分为三种
  1. 1:1 联系中,联系可以放到任意的两端实体中,作为一个属性(要保证 1:1的两端关联);
  2. 1:N 的联系中,联系可以单独作为一个关系模式,也可以在N端中加入1端实体的主键;
  3. M:N 的联系中,联系必须作为一个单独的关系模式,其主键是M和N端的联合主键。

举例:

1:1  : 一个IP只对应一台电脑,一台电脑只对应一个IP。

1:N  :

一个工厂下有多个车间,一个车间只属于一个工厂。

工厂表:编码、名称。车间表:编码、名称、工厂编码。

M:N  :

一个员工可以任职多个岗位,一个岗位可以有多个员工。

岗位表:编码、名称、其他

员工表:编码、名称、其他

员工岗位表:员工编码、岗位编码、其他。

4、关系代数运算

关系模式在代数运算时可以理解为数据库中的表,两个概念通用。
并(∪):结果是两张表中所有记录数合并相同记录只显示一次 -- 列去重,然后记录要求整体去重。
交(∩):结果是两张表中相同的记录
差():S1-S2,结果是S1表中有而S2表中没有的那些记录。 -- 删除共有的记录,保留被减数其他的记录。
并:所有记录合并,相同记录只留一个;交:两个共有的记录;差:被减数中减去减数中的记录
列可以写列号也可列名
设有S1和S2关系如下图,其并交差结果如下图:

笛卡尔积(X):S1*S2,产生的结果包括 S1和S2 的所有属性列,并且S1中每条记录依次和 S2 中所有记录组合成一条记录,最终 属性列为S1+S2 属性列, 记录数为S1*S2 记录数。
记录相乘,并且属性列不去重。
投影(π ):实际是按条件选择某关系模式中的某列(垂直方向运算),列也可以用数字表示。
选择(σ ):实际是按条件选择某关系模式中的某行记录(水平方向运算)。
记忆关键字: 投影π 列,选择σ
设有S1和S2关系如下图,其笛卡尔积、投影、选择结果如下图:

自然连接():结果显示全部的属性列,但是相同属性列只显示一次,显示两个关系模式中属性相同且值相同的记录。自然联接结果如下:
在笛卡尔积基础上属性列去重( 列和记录 ), 条件是 :保留属性且属性值相同的
 
效率问题:关系代数运算的效率,归根结底是看参与运算的两张表格的属性列数和记录数,属性
列和记录数越少,参与运算的次数自然越少,效率就越高。因此,效率高的运算一般都是在两张表格参与运算之前就将条件判断完。如:
后者效率比前者效率高很多。
  
结合数据表的操作及相关名词补充:
广义投影:广义投影运算允许在投影列表中使用算术运算,实现了对投影运算的扩充。若有关系R,条件F1,F2, … ,Fn中的每一个都是涉及R中常量和属性的算术表达式,那么广义投影运算的形式定义为
连接: 分为 θ 连接、等值连接与自然连接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辣香牛肉面

感谢有缘之人的馈赠

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值