数据库原理(一)

数据库原理(一)

DB的概念与特点

数据库(DB)是存储在计算机系统内的有结构的数据集合,是相关数据的集合,数据由数据库管理系统统一管理和维护。

数据(Data)指的是可观察的客观事实,并且有隐含的含义。
在数据库中,数据与数据的含义(数据名称及说明)同时存储。
数据的最小存取单位是构成记录的、有名称的、有含义的最小数据单位——数据项。
定义数据库时,必须定义数据项的逻辑结构。
在使用数据库时,以数据项名存储数据、更新数据以及查询和使用数据。
在数据库中,不仅包含数据本身,还包含了数据结构和约束的完整性定义或者描述。这些定义存储在DBMS的目录中,称为数据库的元数据或者数据字典。

任何合法用户都可以在元数据的帮助下,利用数据项名方面的访问数据库中的数据以及他们的逻辑定义,并使用这些数据,亦即数据可高度共享。

数据库是存储在计算机系统内的有结构的数据的集合,数据是由数据库管理系统管理的。

据库系统(DBS)特点与组成要素

DBS是指在计算机系统中引入数据库后的数据构成,由计算机硬件、操作系统、DBMS、DB、应用程序和用户以及数据库开发和管理人员等组成。

数据库系统区别于传统文件处理系统的最重要特征是引入了数据库这个概念,以及产生数据库管理系统。

与文件系统相比,DBS有如下特点

整体数据结构化:数据库中的任何数据都是公开的,不属于任何应用,结构是全面的。
数据的共享度高:在显示数据的同时可以显示数据的逻辑结构;整个组织的整体数据被综合考虑,整体数据结构化。可以方面的使用数据和扩充新的应用。

数据的独立性高:数据与数据的结构存储在数据库中,应用程序既不存储数据也不存储数据的逻辑结构。数据与程序相对独立。

高度的数据控制能力:具有较高的数据安全性;较好的数据完整性;较强的并发控制能力;较强的数据恢复能力。

数据库管理系统(DBMS)的功能

数据库管理系统是专门用来实现和维护数据库而建立的通用软件。
DBMS是操作系统支持下工作的数据管理软件,是支持用户创建和维护数据库的一组程序包。
对内负责管理数据库,对外向用户提供一整套命令。
用户可以通过命令来创建数据库,定义数据,对数据库中的数据进行各种合法的操作。

DBMS功能

数据定义:用户可以利用数据定义语言(DDL)来方便地定义数据库中数据的逻辑结构。
数据操纵:用户可以利用数据操纵语言(DML)来实现对数据库对数据库中数据的插入、查找、修改或者删除操作。

完整性约束检查:检查数据时候符合一定的规定。
访问控制:通过数据控制语言(DCL)来实现对不同级别用户的访问控制功能。
并发控制:通过只用并发控制功能,可以确保试图更新同一数据的多个用户能够以一种受控的方式完成各自的工作,即避免并发操作时可能带来的数据不一致性。

数据恢复:恢复数据库。

三级模式与两级映像


模式

模式又称概念模式或逻辑模式,对应于概念级。
它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图,数据库的表,字段的类型等等)。

它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的,体现、反映了数据库系统的整体观。

外模式

外模式又称子模式,对应于用户级。
它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。
外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。
用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(Data Manipulation Language,DML)对这些数据记录进行处理。外模式反映了数据库的用户观(视图、查出数据的表)。

外模式/模式

外模式/模式映象存在于外部级和概念级之间,用于定义外模式和概念模式之间的对应性。

模式/内模式

模式/内模式映象存在于概念级和内部级之间,用于定义概念模式和内模式之间的对应性。

内模式

内模式又称存储模式,对应于物理级。
它是数据库中全体数据的内部表示或底层描述,它描述了数据在存储介质上的存储方式及物理结构(顺序存储、按照B树结构存储还是按hash方法存储),对应着实际存储在外存储介质上的数据库。

内模式由内模式描述语言来描述、定义,它是数据库的存储观。

数据独立性

数据独立性(data independence)是指应用程序和数据库的数据结构之间相互独立,不受影响。
数据独立性分成物理数据独立性和逻辑数据独立性两个级别。

(1)物理数据独立性:对内模式的修改尽量不影响逻辑模式、外模式和应用程序,我们称数据库达到了物理数据独立性(简称物理独立性)。

(2)逻辑数据独立性:对逻辑模式的修改尽量不影响外模式和应用程序,我们称数据库达到了物理数据独立性(简称逻辑独立性)。

总结

用户应用程序根据外模式进行数据操作(可以结合三层的思想来理解这个内容)

通过外模式/模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;(逻辑性。)

通过模式/内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式/内模式映射,就能保持模式不变,因此应用程序也可以保持不变。(物理性)