数据库三级备考笔记(自用)

数据库三级复习笔记

/**
1、适用于2020年3月的计算机三级考试

2、这个是我第一次写博客,主要是将学习/复习中遇到的问题及解决方案写出来,方便考前复习。

3、之前学过MySql数据库,三级貌似不太注重应用方面的东西

4、主要是给自己看的,也欢迎备考的同学一起解决问题

5、随缘更

6、主要是选择题和填空题的知识点
**/
/*******************************************************************************************/

Day1:2020.1.21

1、用于提供数据与应用程序之间的物理独立性的是:模式/内模式

数据库的三级模式:
        1.1、外模式:逻辑独立性
        1.2、模式
        1.3、内模式:物理独立性

2、关于视图:视图是从一个或多个基本表中导出的虚表,既然是虚表,它就不能存储数据,所以不是物理存储,但是对视图的数据进行修改后,原表的数据也会发生改变。同时,视图也提供了一定程度的逻辑数据独立性。

3、企业建立数据仓库的意义:利用企业信息系统生成的数据。以面向主题、集成的方式合理组织数据,解决数据分析应用,而不是将各种应用系统集中在一起,这个是需要注意的点。

4、关于数据库应用系统的设计:
设计包括三个阶段
        4.1、概念设计:定义数据、联系、约束、安全性要求等;
        4.2、逻辑设计:设计视图和关系模式(E-R图:E-R设计遵循自下而上)的完整性约束;
        4.3、物理设计:数据库实施阶段,将关系模式转化为具体的DBMS平台支持的关系表。

5、关于数据库应用系统设计阶段的需求分析阶段:
        5.1、需求分析过程中,需要描述系统的整个应用系统的功能特性、性能特征和约束,并形成规范化文档;
        5.2、需求分析过程中,要与用户充分沟通,做好需求描述,由视图形成数据字典,并且,数据操作响应时间、系统吞吐量和最大并发用户数都是性能需求分析的重要指标。

6、关于优化查询:在保证数据库一致的前提下,将频繁操作的多个可以分割的处理过程放在多个存储过程中,可以大大提高系统的响应速度。使用游标会在占用较多的系统资源,尤其对于大规模并发量的情况,而使用临时表能够加速查询。相关子查询不会增加查询速度。

7、关于数据库分割表:
        7.1、水平分割:多个过程频繁访问数据表的不同行,采用水平分割,若有一部分行总是被频繁访问,可以将这些数据单独形成子集表(冗余存储),但是在分割完之后,会增加数据库的维护难度,要使用触发器来立即更新、或者用存储过程及应用代码来进行数据的更新;
        7.2、垂直分割:不破坏第三范式。当多个过程频繁访问数据表的不同列,采用垂直分割。和水平分割一样。不同的是,垂直分割以后,查询数据需要JOIN操作。

8、结构图包括:例图、类图、组件图、对象图和部署图。

9、关系表中的个每个属性对应文件记录中的一个域。

10、B/S 和 C/S
        10.1B/S:浏览器/服务器结构。B/S架构的系统无需特别安装,有web浏览器即可。显示逻辑交给web浏览器,事务处理逻辑放在了webapp上,在B/S架构中,客户端只需要安装web浏览器即可,且应用业务规则一般是web服务器端实现的。/瘦客户端架构/
        10.2:C/S:客户端/服务器结构。客户端包括一个或多个在用户电脑上运行的程序,在这种结构中,作为客户端的部分需要承受很大的压力,因为逻辑和事务处理都包含其中,需要通过与数据库的交互,通常是SQL或存储过程实现来达到持久化数据,以此满足实际项目的需要。/胖客户端架构/

Day2:2020.1.22

11、关于数据库日志:若出现日志满的情况,只能执行查询等读操作,不能执行更改,备份等写操作。

12、死锁发生时:会撤销其中一个事务,并恢复到初始状态。

13、在关系模型中,起导航作用的是关键码。

14、关系型数据库包括:oracle、MySql、SQLsever等。

15、三个操作
        15.1、丢失修改:指的是两个事务T1和T2同时对数据库的某些数据进行了修改,T1的修改破坏了T2的修改;
        15.2、不可重复读:T1读取完成之后,T2对数据进行了修改;
        15.3、读脏数据:T1修改数据写回,T2读取之后,T1又进行了撤回,这时候T2读取的数据不对。

16、视图是一个基本表,视图的构造基于基本表或视图。

你可能感兴趣的:(数据库学习)