记了几篇笔记,都是摘抄教材上自己认为重要的原话,其实没什么意义。结合自己学习的目的,是要掌握一些基础理论后,通过实践逐步掌握处理实际问题的专业技术,而不是应试,所以重新整理一下自学笔记。
理论知识和系统的教程,看书或看视频教程就可以了。
目录
一、数据库管理系统的出现
在使用计算机文件管理系统管理日常使用的数据之后,因为文件管理系统对大量数据的管理和查询、多用户访问的控制以及故障情况下数据的恢复等方面的能力不够强大。数据库管理系统(DBMS)就是建立在操作系统的文件管理系统之上,通过技术的不断进步而出现的新技术。
首先介绍几个概念
1、数据库:即将实体和实体之间的关系通过某种形式进行存储,形成的这样一种集合。
2、数据模型:即数据结构,就是对实体和实体之间的关系的一种描述方法。关系数据模型现在仍然是我们使用的主流数据模型。
3、数据模式:按照某种数据模型,对某个组织(企业)进行描述所产生的结果。关系数据模型其实就是表,对表元祖(行)和属性(列)的描述(学号、姓名和长度、类型等),就是这张表的数据模式。
4、数据库系统的抽象层次:
(1) 物理模式:描述数据在磁盘上是怎么存储的。
(2)逻辑模式(概念模式):在关系数据模型中,对表元祖和属性的描述(学号、姓名和长度、类型等),是实际存储在磁盘上的,这些表称为“基表”。概念模式举例,学生选课数据管理,如下:
a)学生基本信息结构
struct StudentInfo
{
int nStudNo;
char szStudName[20];
char cGender;
int nAge;
char szDept[30];
};
b)课程结构
struct Course
{
int nCourseNo;
char szCourseName[20];
char szDept[30];
};
c)注册结构
struct Enrollment
{
int nStudNo;
char nWhichTerm;
char cEnrolled;
char szMem[30];
};
d)选课及成绩结构
struct Score
{
int nStudNo;
int nCourseNo;
int nScore;
};
(3)视图(外模式):给最终用户最终看到的数据的样子,不同用户看到的是不同的样子。视图可以根据逻辑模式计算得出,未必存储在磁盘上。
5、数据库系统组成:DBMS(数据系统的核心)+应用程序+数据库+数据库管理员
二、数据库管理系统的特点和功能
(一)DBMS的主要功能
1、数据定义功能
(1)提供数据定义语言(DDL)
(2)定义数据库中的数据对象
2、数据组织、存储和管理
(1)确定数据在存储级别上的结构和存取方式
(2)提供多种存取方法来提高存取效率
3、数据操纵功能
(1)提供数据操纵语言(DML)
(2)实现对数据库的基本操作(增删改查)
4、数据库的事务管理和运行管理
(1)数据的安全性、完整性、多用户对数据的并发使用
(2)发生故障后的系统恢复数据库
(二)、DBMS的优点
1、数据独立性:逻辑模式(映射)、物理模式(索引) /*P3,20*/
2、高效数据访问
3、数据完整性与安全性
4、数据统一管理
5、并发访问与故障恢复
6、缩短应用开发时间
三、数据库技术发展的历史
(一)从数据模型角度:
1、20世纪50年代中期:人工管理阶段(主要用于科学计算,不需要永久存储数据)
2、20世纪50年代后期至60年代中期:文件系统阶段(非数值管理,需要永久存储数据)
3、数据库系统阶段:
(1)20世纪60年代末:层次/网状数据库系统(第一代)
(2)20世纪70年代初:关系数据库系统(第二代)
(3)20世纪80年代:面向对象的数据库系统(第三代)
(二)从DBMS体系结构发展角度:
1、集中式数据库系统(一台主机带多个哑终端)
2、并行式数据库系统(但从数据存储角度,仍然在一台机器上)
3、分布式数据库系统(将多台处理能力较弱的计算机联网,数据存储和处理分别放在不同的机器,但逻辑上是统一的)
4、移动数据库系统(利用现代先进的移动网络,通过智能终端随时随地访问和处理企业数据)
(三)从基于数据库应用系统的体系发展角度:
1、集中式结构(哑终端通过线缆连接到主机,哑终端没有处理能力)
2、分布式结构(各台计算机是平等的,每台主机存储和管理一部分数据,本地没有的数据可以通过网络互联调用)
3、C/S结构(用户需要在客户端安装应用。服务器专门运行数据库服务,各种应用程序通过访问服务器调用数据)
4、三层或多层体系B/S结构(用户只需要一个浏览器。用户通过浏览器向企业WEB服务器提出请求,企业WEB服务器如果发现调用的是一个应用模块,再向对应的应用服务器发出请求,如果应用服务器需要调用数据,又会向数据库服务器发出请求)
5、移动计算
6、网格计算或云计算(强调的是一种虚拟化)
(四)从数据应用领域发展角度:
1、OLTP:以日常事务处理为内容的数据库。
2、按类型分类的数据库:工程类、多媒体类等数据的管理数据库。
3、时态数据库:管理数据的时态信息。
4、空间数据库:管理时空地理信息。
5、数据仓库、数据挖掘等数据库:在长期积累的海量数据里,挖掘一定的规律。
6、知识管理数据库:图纸、文档、工作经验等数据的管理。
四、数据库系统的生命周期
1、数据库系统的规划
2、数据库设计
3、数据库的创建和记载
4、数据库的运行、管理和维护
5、数据库的扩展和重构