数据库系统的基本概念
数据库系统的基本概念
1. 数据
数据(Data)是数据库中存储的基本对象。可以定义为:描述事物的符号记录。(描述事物的符号很多,可以是数字、⽂字,也可以是图形、声⾳等,它们都可以经过数字化处理后存⼊计算机。)
数据与其语义是不可分的,数据的语义也称数据的含义,就是指对数据的解释。
2. 数据库
数据库(DataBase,DB)是指长期存储在计算机内的、有组织的、可共享的⼤量数据集。(数据库中的数据按⼀定的数据模型组织、描述和存储,并且可为各种⽤户共享。)
3. 数据库管理系统
数据库管理系统(DataBase Management System,DBMS)是位于⽤户与操作系统之间的⼀层数据管理软件。(科学地组织和存储数据,⾼效地获取和维护数据。)
有以下四个功能:
1. 数据定义功能:⽤户可以通过它⽅便地对数据库中的数据对象进⾏定义。
2. 数据操纵功能:⽤户可以通过它实现对数据库的查询、插⼊、删除、修改等基本操作。
3. 数据库的运⾏管理:⽤户可以通过它实现对数据库安全性、完整性、⼀致性的保障。
4. 数据库的建⽴和维护功能:⽤户可以实现数据库的初始化、运⾏维护等。
4. 数据库系统
数据库系统(DataBase System,DBS)是指在计算机系统中引⼊数据库后的系统,是由软件和硬件组成的完整系统。(⼀般由数据库、数据库管理系统、计算机硬件和软件⽀撑环境、应⽤系统、数据库管理员和⽤户构成。)
数据模型
现实世界信息化过程
数据模型是对现实世界的抽象,将现实世界中有价值的数据及其关联抽象出来,并未DBMS所⽀持,
最终在机器上实现。(通常是从现实世界抽象出概念模型,然后转换为机器实现。)
现实世界设定了需求及边界条件,这为整个转换提供了客观基础与初始启动环境。
2. 信息世界
信息世界是现实世界在⼈脑中的反映,是对客观事物及其联系的种抽象描述。 信息世界由概念模型描述。概念模型是按⽤户的观点对数据建模。概念模型是对现实世界的抽象表⽰,是现实世界到计算机世界的⼀个中间层次。可以利⽤概念模型进⾏数据库的设计以及在设计⼈员和⽤户之间进⾏交流。因此概念模型应该具有较强的语义表达能⼒并且应该易于⽤户理解。
概念模型涉及如下术语
1. 实体:客观存在的、可以相互区别的事物或概念。(具体的事物或抽象的概念。)
2. 属性:实体所具有的某⼀特性。属性的具体取值称为属性值。
3. 码:能够唯⼀标识实体的属性集。
4. 域:属性的取值范围。(例如,字符集或数值集。)
5. 实体型:具有相同属性的实体为同型实体,⽤实体名及其属性名的集合来抽象和刻画同型实体,称为实体型。
实体名(属性名1、属性名2、属性名3、属性名4...)
6. 实体集:属于同⼀个实体型的实体集合。实体集是实体型的有限集合。
7. 联系:包括实体内部的联系与实体之间的联系。实体内部的联系指实体的各属性之间的联系,实体之间的联系指不同实体集之间
的联系。
3. 计算机世界
计算机世界将信息世界的概念模型数字化转换为数据模型,实现信息的数据化,便于计算机处理。(致⼒于在计算机物理结构上的描述。)
数据模型的组成要素
数据模型是数据库中⽤来对现实世界进⾏抽象的⼯具,是数据库系统的核⼼与基础。数据模型描述了数据的结构,以及定义在其上的操作和约束条件。
对数据模型的共性进⾏抽象、归纳,则数据模型可严格地定义为⼀组概念的集合(这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件)这就是数据模型的组成要素:数据结构、数据操作和完整性约束条件。
1. 数据结构
数据结构主要描述数据类型、内容、性质的有关情况以及数据间的联系,是对系统静态特征的描述。数据结构描述数据模型最重要的⽅⾯,通常按数据结构的类型来命名数据模型。(例如,层次结构的数据模型是层次模型,⽹状结构的数据模型是⽹状模型,关系结构的数据模型是关系模型。)
2. 数据操作
数据操作主要描述在相应数据结构上的操作类型与操作⽅式,是对系统动态⾏为的描述。数据库主要有检索和更新(包括插⼈、删除、修改)两⼤类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先级)以及实现操作的语⾔。
3. 完整性约束条件
完整性约束条件主要描述数据结构内数据间的语法、语义联系、它们之间的制约与依存关系,以及数据动态变化的规则,以此来保证数据的正确、有效与相容。数据模型应该反映和规定本数据模型必须
遵守的、基本的通⽤的完整性约束条件。如在关系模型中,任何关系必须满⾜实体完整性和参照完整性。此外,数据模型还应该提供定义完整性约束条件的机制,以反映具体应⽤所涉及的数据必须遵守的特定的语义约束条件。
常⽤的数据模型
数据库有类型之分,是根据数据模型划分的。在数据库中针对不同的使⽤对象和应⽤⽬的,采⽤不同的数据模型。
数据库发展⾄今,有以下⼏种数据模型:
在现实世界中,有很多事物是按层次组织起来的。层次模型的提提出⾸先是为了模拟这种按层次组织起来的事物。下⾯从层次模型的组成要来进⾏描述:
1. 数据结构
层次结构是⽤树状结构表⽰记录类型及其联系的。
在层次模型中,树的结点是记录型。
2. 数据操作
数据库属性的概念主要有查询、插⼊、删除和修改。
3. 完整性约束
插⼊:如果没有相应的双亲结点值,就不能插⼊⼦⼥结点值。
删除:如果删除双亲结点值,则相应的⼦⼥结点值也被同时删除。
修改:应该修改所有相应记录,以保证数据的⼀致性。
4. 层次模型的优点
结构简单,数据模型⽐较简单,操作⽅便。
性能出⾊:对于实体间联系是固定的且预先定义好的应⽤系统性能较好。
完整性好:提供良好的完整性⽀持。
5. 层次模型的缺点
适⽤⾯不⼴:不适合于表⽰⾮层次性的联系。
操作限制多:对插⼊和删除操作的限制⽐较多,查询⼦⼥结点必须通过双亲结点。
命令程序化:由于结构严密,层次命令趋于程序化。
⽹状模型
关系模型