一、数据库基本概念
数据库(DB):可看成“表”的集合(结构化关系数据库)
数据库管理系统(DBMS):管理数据库的软件,如Oracle,SQL Server
数据库应用(DBAP)
数据库管理员(DBA):数据库管理系统的使用者,数据库的创建者
之间的关系:
数据库应用面向普通用户,通过数据库管理系统使用数据库。
二、数据库管理系统(DBMS)的三级层次、两层映像:
(1)DBMS管理数据的三个层次:
1、外部层次( E )/用户层次:指某一个用户能够看到并处理的数据
2、概念层次( C )/逻辑层次:从全局角度理解数据
3、内部层次/存储层次:存储在介质上的数据
每一个层次对应一级模式,模式(Scheme)可以理解为对数据组织的方式;
每一级模式对应一级视图,视图(View)我觉得可以理解为数据的展现方式。
(2)两层映像:
1、E-C Mapping:将外模式映射为概念模式,实现概念视图向外部视图转换,方便用户观察使用
2、C-I Mapping:将概念模式映射为内模式,实现概念视图向内部视图的转换,目的在于方便计算机处理数据
DBMS的作用就是让用户去定义三级模式,通过程序自动实现两级映像。
(3)两级独立性:
1、逻辑数据独立性:
当概念模式改变时,不用改变外部模式,只需改变E-C Mapping。
2、物理数据独立性:
当内部模式变化时,只需改变C-I Mapping,无需改变概念模式和外部模式。
三、数据模型
(1)数据模型:规定模式统一描述方式的模型,如关系模型(表的形式)、层次模型(树结构)、网状模型(图结构);数据模型包括数据结构、操作和约束,是对模式的抽象。
(2)模型和模式:
模型是模式的抽象,模式负责对模型具象化
四、数据库系统演变里程碑
(1)文件系统到数据库的转变:
文件是OS管理的基本单位,不足在于数据的组织密切依赖应用程序(不同程序定义各自的数据结构,不能互通),文件之间无联系,共享性差。
而数据库系统则在文件系统之上定义了可供不同应用程序通用的API,对数据进行读写操作,以记录为单位。
(2)由层次、网状模型到关系模型的转变:
层次/网状模型的缺点:
由指针维系,数据组织复杂;检索依赖指针路径;并不能有效记录集合操作(一次检索大量数据)。
关系模型的优点:
1、数据结构简单 2、有效支持记录集合操作 3、检索不依赖指针路径
(3)由关系模型数据库向面向对象数据库的转变:
关系数据库的主要不足:
按行按列组织数据,数据不可再分(关系第一范式),不能满足如下图这种复合属性:
方法:通过引入对象的方式组织数据—>面向对象数据库,半结构化数据库(如XML数据库)。
(4)开放互联数据库
通过JDBC(Java)/ODBC提供的接口,访问不同的数据库