数据库基本概念
数据库
数据库的定义
数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。
数据库的基本特征
- 数据按一定的数据模型组织、描述和储存
- 可为各种用户共享
- 冗余度较小
- 数据独立性较高
- 易扩展
数据库的三级模式
-
模式(一个数据库只有一个模式)
模式的定义:
数据的逻辑结构(数据项的名字、类型、取值范围等)
数据之间的联系
数据有关的安全性、完整性要求 -
外模式(也称子模式或用户模式)
数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和 特征的描述
外模式的用途:
是保证数据库安全性的一个有力措施,每个用户只能看见和访问所对应的外模式中的数据 -
内模式(也称存储模式)
是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式
记录的存储方式(例如,顺序存储,按照B树结构存储,按hash方法存储等)
索引的组织方式
数据是否压缩存储
数据是否加密
数据存储记录结构的规定
一个数据库只有一个内模式
数据库管理系统
什么是数据库管理系统
位于用户与操作系统之间的一层数据管理软件
是基础软件,是一个大型复杂的软件系统
数据库管理系统的用途:
科学地组织和存储数据、高效地获取和维护数据
数据库管理系统的主要功能
-
数据定义功能
-
数据操纵功能
-
数据库的运行管理功能
-
数据库的建立和维护功能
-
数据组织、存储和管理功能
-
其他功能:主要包括与其他软件的通信功能、不同数据库管理系统的数据传输以 及相互访问功能等
数据库系统
数据库系统(Database System,简称DBS),是计算机系统引入数据库的系统
数据库系统的构成
- 数据库
- 数据库管理系统(及其应用开发工具)
- 应用程序
- 数据库管理员
- 用户
数据模型
数据模型的概念
数据模型是对现实世界数据特征的抽象,描述的是数据的共性内容
数据的特征
数据具有动态和静态两种特征
动态特征:指对数据可以进行符合一定规则的操作。
静态特征:包括数据的基本结构,数据间的联系以及对数据取值范围的约束
数据模型的组成要素
数据结构:描述的是系统的静态特性,即数据对象的数据类型、内容、属性以及数据对象之间的联系。
数据操作:描述的是系统的动态特性,是对各种对象的实例允许执行的操作的集合,包括操作以及有关的操作规则。
数据约束:描述数据结构中数据间的语法和语义关联,包括相互制约与依存关系以及数据动态变化规则,以保证数据的正确性、有效性与相容性。
概念模型
-
现实世界到机器世界的中间层
-
概念模型的一种表示方法:实体-联系方法
-
实体(Entity)
客观存在并可相互区别的事物称为实体。 可以是具体的人、事、物或抽象的概念。
-
属性(Attribute)
实体所具有的某一特性称为属性。 一个实体可以由若干个属性来刻画。
-
码(Key)
唯一标识实体的属性集称为码
-
实体型(Entity Type)
用实体名及其属性名集合来抽象和刻画同类实体称为实体型
-
实体集(Entity Set)
同一类型实体的集合称为实体集(比如全班学生)
-
联系(Relationship)
实体内部的联系通常是指组成实体的各属性之间的联系 实体之间的联系通常是指不同实体集之间的联系 实体之间的联系有一对一、一对多和多对多等多种类型
逻辑数据模型
逻辑数据模型(Logical Data Model):是具体的DBMS所支持的数据模型,具体分为六种模型
- 层次模型(Hierarchical Model)
- 网状模型(Network Model)
- 关系模型(Relational Model)
- 面向对象数据模型(Object Oriented Data Model)
- 对象关系数据模型(Object Relational Data Model)
- 半结构化数据模型(Semistruture Data Model)
层次模型
层次模型是数据库系统中最早出现的数据模型,用树形结构来表示各类实体以及实体间的联系 。
网状模型
以网状结构表示实体与实体之间的联系。
关系模型
关系数据库系统采用关系模型作为数据的组织方式
-
优点
建立在严格的数学概念的基础上 概念单一 实体和各类联系都用关系来表示 对数据的操作结果也是关系 关系模型的存取路径对用户透明 具有更高的数据独立性,更好的安全保密性
-
缺点
存取路径对用户透明,查询效率往往不如格式化数据模型 为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度