基本术语
1)信息:指数据加工处理后有用的数据。
2)信息的3种世界:
(1)现实世界:存在于人脑之外的客观世界。
(2)信息世界:现实世界在人脑中的反映。
(3)数据世界:将信息世界中的信息通过抽象和组织,按特定的数据结构,将数据存储于计算机中。
3)数据:描述事物的符号记录。
(1)数据处理:指对各种数据进行采集、存储、检索、加工、传播和应用等一系列活动的总和。
(2)数据管理:对数据进行有效的分类、组织、编码、存储、检索、维护和应用,是数据处理的中心问题。
(3)数据冗余:指相同的数据在不同的地方重复存储。
(4)数据完整性:指数据的正确性、有效性、相容性,也称为一致性约束。
4)数据库
(1) 含义:长期存储在计算机内的、有组织的、可共享的数据集合。
狭义:存储数据的仓库。
广义:可以对数据进行存储和管理的软件以及数据本身统称为数据库。
数据库是由表、关系、操作组成。
(2)数据库特点:较小的冗余度、较高的数据独立性、易扩展性、可为各个用户共享。
(3)数据库技术:科学的组织和存储数据、高效的获取和处理数据。
(4)一个数据库中包含三个文件:基本数据文件(主数据文件):.mdf 有且只有一个。
辅助数据文件:.ndf 可有可无可多个。
日志文件:.ldf 至少一个。
(5)数据库管理技术经历的阶段:人工管理阶段、文件系统阶段、数据库管理阶段。
(6)为什么需要数据库
几乎所有的应用软件的后台都需要数据库
数据库存储数据占用空间小,容易持久保存
存储比较安全
容易维护和升级
数据库移植比较容易
简化对数据的操作
(7)有了编程语言为什么还需要数据库
对内存数据操作是编程语言的强项,但对硬盘数据操作却是编程语言
对硬盘数据操作却是数据库的强项,是数据库研究的核心问题
5)DBMS(数据库管理系统):由一个相互关联的数据的集合和一组用以访问、管理和控制这些数据的程序组成。
(1)DBMS的用途:科学地组织和存储数据、高效地获取和维护数据。
(2)DBMS的特点:数据结构化、数据的共享度高、冗余度低、易扩充、数据独立性高、数据由数据库管理系统统一管理和控制。
(3)DBMS的组成:模式更新、查询、更新、查询处理器、存储管理器、事物管理器。
6)DBS(数据库系统):DBS=DB+DBMS
(1)DBS的发展:网状数据库(网状模型,图形结构)
层次数据库(层次模型,树形结构)
关系数据库(关系模型,简单二维表结构)
(2)SQL(结构化查询语言):专为数据库而建立的操作命令集。
数据模型
1)根据数据抽象的不同级别,将数据模型划分为3层:概念模型、逻辑模型、物理模型。
2)数据模型的组成:数据结构、数据操作、数据完整性。
(1)数据结构:描述数据库的组成对象(实体)以及对象之间的联系,是对系统静态特征的描述。
数据结构和数据库的区别
数据库是在应用软件级别研究数据的存储和操作
数据结构是在系统软件级别研究数据的存储和操作
(2)数据操作:指对数据库中各个对象的实例允许执行的操作的集合,是对系统动态特征的描述。
(3)数据完整性约束(数据约束):对数据结构和数据操作的一致性、完整性约束。
3)概念模型
(1)概念模型是现实世界的第一层抽象。
(2)常见的概念模型:实体联系模型(E-R模型)、面对对象模型(OO模型)。
4)逻辑模型
(1)逻辑层:数据抽象的中间层,用于描述数据库数据的整体逻辑结构,是现实世界的第二层抽象。
(2)逻辑层的数据抽象称为逻辑数据模型(数据模型)。
(3)传统的逻辑数据模型:层次模型、网状模型、关系模型;非传统的逻辑数据模型:面向对象模型(OO模型)、XML模型。
5)物理模型
(1)物理层:数据抽象的最底层,用于描述数据的物理存储结构和存取方法。
(2)物理层的数据抽象称为物理数据模型。
层次模型
1)层次模型用树形结构来表示各类实体以及实体间的联系。
2)条件:有且仅有一个结点没有双亲结点(根结点)、根以外的其他结点有且仅有一个双亲结点。
3)优点:数据结构简单清晰、查询效率高、提供了良好的数据完整性支持。
4)缺点:多对多联系表示不自然、查询孩子结点必须通过双亲结点、由于结构严密层次命令区域程序化、对插入和删除操作的限制多。
网状模型
1)条件:允许一个以上的结点无双亲、一个结点可以有多个双亲。
2)优点:更直接的描述现实世界、存取效率高。
3)缺点:结构复杂、操作语言复杂。
关系模型
1)关系模型由一组关系组成,每个关系的数据结构是一张二维表,没有重复行、列。
2)常用术语
(1)关系:一个关系对应一张二维表。
(2)元组:表中的一行。
(3)属性:表中的一列。
(4)码(码键):表中的某个属性或属性组,可以唯一标识表中的一行。
(5)域:属性的取值范围。
(6)分量:属性的取值范围。
(7)外码:表中的某个属性或属性组,用于描述本关系中的元组与另一个关系中的元组之间的联系。
(8)关系模式:形式:关系名(属性名1,属性名2,...,属性名n)。
数据抽象
1)物理层抽象:最低层次的抽象,描述数据实际上是如何存储。
2)逻辑层抽象:中间层次的抽象,描述数据库中存储什么数据以及这些数据之间存在什么关系。
3)视图层抽象:最高层次的抽象,只描述整个数据库的某个部分。
数据库的三级模式
1)模式:数据库中全体数据的逻辑结构和特征的描述,仅涉及型的描述,不涉及具体的值。
2)实例:模式的一个具体值,同一个模式可以有很多实例。
3)三级模式结构:外模式、模式、内模式。
(1)外模式(子模式、用户模式):对应于视图层数据抽象,通常为模式的子集,数据的局部逻辑结构。
(2)模式(逻辑模式):对应于逻辑层数据抽象,是数据库中全体数据的逻辑结构和特征描述,是用户的公共数据视图,数据库管理系统模式结构的中间层,既不涉及数据的物理存储细节和硬件环境,一个数据库只有一个模式,数据的全局逻辑结构,一个模式可以有多个外模式。
(3)内模式(存储模式):对应于物理层数据抽象,是数据的物理结构和存储方式的描述,是数据在数据库内部的表现方式,一个数据库只有一个内模式。
数据库的两层映像
1)外模式/模式映象:定义了该外模式与模式之间的对应关系,保证了数据的逻辑独立性。
2)模式/内模式映象:唯一的,定义了数据全局逻辑结构与存储结构之间的对应关系,保证了数据的物理独立性。