数据库系统的基本知识
- 格式:doc
- 大小:246.00 KB
- 文档页数:59
数据库系统的基础知识和设计数据库系统是现代信息管理的重要工具,它以数据为核心,通过建立、维护和利用数据库来解决数据管理和信息处理的需求。
本文将介绍数据库系统的基础知识和设计原则,以帮助读者全面了解和掌握数据库系统。
一、数据库系统的基础知识1. 数据库概述数据库是一个有组织的、可共享的数据集合,它以一定的数据模型组织数据,并提供了数据的存储、管理和访问功能。
常见的数据库系统有关系型数据库、面向对象数据库和NoSQL数据库等。
2. 数据模型与关系模型数据模型是对现实世界的抽象表示,关系模型是其中最常用的一种数据模型。
关系模型使用二维表格的形式表示数据,并通过关系代数和关系演算来进行数据操作。
3. 数据库管理系统数据库管理系统(DBMS)是管理数据库的软件系统,它负责数据的存储、安全性、完整性、并发控制和恢复等方面的管理工作。
常见的DBMS有Oracle、MySQL、SQL Server等。
4. 数据库设计数据库设计是建立数据库系统的过程,它包括概念设计、逻辑设计和物理设计三个阶段。
概念设计阶段定义了数据库的整体结构,逻辑设计阶段将概念模型转换为关系模型,物理设计阶段确定了数据的存储方式和索引策略。
二、数据库设计原则1. 数据库范式数据库范式是数据设计时需要满足的一些规范,它可以提高数据的一致性、减少冗余和提高查询效率。
常见的范式有第一范式(1NF)、第二范式(2NF)和第三范式(3NF)等。
2. 主键与外键主键是用来唯一标识一条记录的属性或属性组合,它具有唯一性和非空性。
外键是关系模型中一个表中的字段,它引用另一个表中的主键,用于建立表之间的关系。
3. 索引设计索引是数据库中用于快速查找数据的结构,它可以提高查询效率。
在设计索引时,需要考虑选择合适的字段作为索引字段、确定索引类型和设置适当的索引顺序等。
4. 视图设计视图是虚拟的表,它是由基本表中的数据计算、检索或汇总得到的。
视图可以简化数据访问、保护数据安全和提高数据的独立性。
数据库基础知识一、数据库基础知识(一)计算机数据管理的发展1.数据与数据处理数据是指存储在某一种媒体上能够识别的物理符号。
数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式,数据形式可以是多种多样的。
信息:一种已经被加工为特定形式的数据。
对人们而言是可理解、可用于指导决策的数据数据处理是指将数据转换成信息的过程。
从数据处理的角度而言,信息是一种被加工成特定形式的数据,这种数据形式对于数据接收者来说是有意义的。
三者之间的关系:▪ 数据是信息的载体和具体表现形式▪ 信息不随着数据形式的变化而变化▪ 信息=数据+数据处理2.计算机数据管理数据处理的中心问题是数据管理。
计算机对数据的管理是指对数据的组织、分类、编码、存储、检索和维护提供操作手段。
计算机在数据管理方面也经历了由低级到高级的发展过程。
计算机数据管理随着计算机硬件、软件技术和计算机应用范围的发展而不断发展,多年来经历了以下几个阶段:人工管理阶段、文件系统阶段、数据库系统阶段、分布式数据库系统阶段和面向对象数据库系统阶段。
1、人工管理阶段(1)这一阶段是指20世纪50年代中期以前,计算机主要用于科学计算,当时的计算机硬件状况是:外存只有磁带、卡片、纸带,没有磁盘等直接存取的存储设备;软件状况是:没有操作系统,没有管理数据的软件,数据处理方式是批处理。
(2)人工管理阶段的特点是:数据不保存、数据无专门软件进行管理(数据冗余)、数据不共享、数据不具有独立性、数据无结构。
2、文件系统阶段(1)这一阶段从20世纪50年代后期到60年代中期,计算机硬件和软件都有了一定的发展。
计算机不仅用于科学计算,还大量用于管理。
这时硬件方面已经有了磁盘、磁鼓等直接存取的存储设备。
在软件方面,操作系统中已经有了数据管理软件,一般称为文件系统。
处理方式上不仅有了文件批处理,而且能够联机实时处理。
(2)文件系统阶段的特点:数据管理由文件管理系统完成;数据共享性差、冗余度大;数据独立性差;数据可长期保存。
第一章:绪论数据库(DB):长期存储在计算机内、有组织、可共享的大量数据的集合。
数据库中的数据按照一定的数据模型组织、描述和存储,具有娇小的冗余度、交稿的数据独立性和易扩展性,并可为各种用户共享。
数据库管理系统(DBMS):位于用户和操作系统间的数据管理系统的一层数据管理软件。
用途:科学地组织和存储数据,高效地获取和维护数据。
包括数据定义功能,数据组织、存储和管理,数据操纵功能,数据库的事物管理和运行管理,数据库的建立和维护功能,其他功能。
数据库系统(DBS):在计算机系统中引入数据库后的系统,一般由数据库。
数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
目的:存储信息并支持用户检索和更新所需的信息。
数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据由DBMS统一管理和控制。
概念模型实体,客观存在并可相互区别的事物称为实体。
属性,实体所具有的某一特性称为属性。
码,唯一标识实体的属性集称为码。
域,是一组具有相同数据类型的值的集合。
实体型,具有相同属性的实体必然具有的共同的特征和性质。
实体集,同一类型实体的集合称为实体集。
联系两个实体型之间的联系一对一联系;一对多联系;多对多联系关系模型关系,元组,属性,码,域,分量,关系模型关系数据模型的操纵与完整性约束关系数据模型的操作主要包括查询,插入,删除和更新数据。
这些操作必须满足关系完整性约束条件。
关系的完整性约束条件包括三大类:实体完整性,参照完整性和用户定义的完整性。
数据库系统三级模式结构外模式,模式,内模式模式:(逻辑模式)数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
一个数据库只有一个模式。
模式的地位:是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关。
模式定义的内容:数据的逻辑结构(数据项的名字、类型、取值范围等),数据之间的联系,数据有关的安全性、完整性要求外模式:(子模式/用户模式)数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据库和逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的系统的逻辑表示。
一、基本概念1、数据(1)数据的定义:对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对象。
(2)数据的种类:文字、图形、图象、声音(3)数据的特点:数据与其语义是不可分的2、数据库数据库(DataBase 简称 DB)是按照数据结构来组织、存储和管理数据的仓库。
3、数据库管理系统(比如:MySql)(1)数据库管理系统(DatabaseManagementSystem 简称 DBMS)是一种控制和管理数据库的大型软件,是用于建立、使用和维护数据库。
(2)关系型数据库管理系统称为 RDBMS,R 指 Relation。
(3) DBMS 的作用:它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
4、数据库系统数据库系统(DatabaseSystem,简称 DBS),是由数据库及其管理软件组成的系统。
5、数据库管理员数据库管理员 (DatabaseAdministrator,简称 DBA),负责全面管理和控制数据库系统。
6、DBA、DBMS、DB 和 DBS 之间的关系7、数据库的优点(1)数据按一定的数据模型组织、描述和储存(2)可为各种用户共享(3)冗余度较小,节省存储空间(4)易扩展,编写有关数据库应用程序二、数据库管理系统(DBMS)1、DBMS 的主要功能(1)数据定义功能:提供数据定义语言(DDL)用于定义数据库的所有特性和属性,特别是行布局、列定义、键列 (有时是选键方法)、文件位置和存储策略,包括命令:DROP(删除数据库)删除数据库:dropdatabaseifexists 数据库名CREATE(创建数据库)创建表:createtableifnotexists 表名(列名列名约束)ALTER(修改数据库)添加列名:altertable 表名 add 列名约束条件修改列名:altertable 表名 change 老列名新列名数据类型修改列字段数据类型:altertable 表名modity 列名数据类型删除列名:altertable 表名 drop 列名修改表名:altertable 表名 rename 新表名GRANT(赋予权限)REVOKE(从当前用户或者组中取销权限)、TRUNCATE(只删除表中的所有数据,不删除表的结构)命令将快速删除数据表中的所有记录,但保留数据表结构。
数据库基础知识1.数据库系统的基本概念一、信息与数据1.信息信息的概念:信息是现实世界事物的存在方式或运动状态的反映。
换言之,信息是一种已经被加工为特定形式的数据。
信息的特征:(1)信息传递需要物质载体,信息的获取和传递要消耗能量;(2)信息可以感知;(3)信息可以存储、压缩、加工、传递、共享、扩散、再生和增值。
2.数据数据的概念:数据是将现实世界中的各种信息记录下来的符号,其意义是客观实体的属性值,是信息的载体和具体表现形式。
数据的表现形式:数字、文字、图形、图像、声音。
3.数据与信息的关系数据与信息紧密相关,信息提供现实世界中有关事物的知识;数据是载荷信息的物理符号,二者不可分离又有一定区别。
二、数据处理与数据管理技术1.数据处理:是指将数据转换为信息的过程。
2.数据管理:数据收集、分类、组织、编码、存储、检索、传输和维护等环节是数据处理的基本操作,称为数据管理,是数据处理的核心问题。
3.数据管理技术的三个发展阶段(1)人工管理阶段(20世纪50年代)特点:数据无独立性(2)文件管理阶段(20世纪60年代)特点:出现了文件系统.实现以文件为单位的数据共享,程序和数据有了一定的独立性:(3)数据库系统阶段(20世纪60年代末期开始)特点:数据库管理系统对令部数据实施统一的、集中的操作,实现了数据独立性、可共享、冗余度小。
三、数据库技术的发展数据库发展阶段的划分以数据模型的进展作为主要依据和标志。
数据库的发展经历了3个阶段1.第一代数据库是层次数据库系统和网状数据库系统其数据模型分别为层次模型和网状模型,第一代数据库的典型代表:IMS。
2.第二代数据库是关系数据库系统其数据模型称关系模型,目前大部分数据库系统采用关系模型。
典型代表:Ingres3.第三代数据库是面向对象的数据库管理系统支持面向对象的数据模型,保持和继承了第二代数据库系统的优点,更安全、高效、方便,同时还具有开放性。
四、数据库技术的发展趋势(1)面向对象的方法和技术对数据库发展的影响(2)数据库技术与多学科技术的有机结合(3)面向专门应用领域的数据库技术的研究五、数据库系统的组成1.数据库系统的组成一个完整的数据库系统由数据库、数据库管理系统、应用程序、计算机硬件、计算机软件、应用程序和各类人员组成。
数据库知识点整理(全)Unit 1四个基本概念1.数据(Data)是数据库中存储的基本对象。
2.数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。
3.数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件(系统软件),其主要功能包括数据定义、数据操纵、数据库的运行管理以及数据库的建立和维护功能(实用程序)。
DBMS的用途是科学地组织和存储数据,高效地获取和维护数据。
4.数据库系统(Database System,简称DBS)指在计算机系统中引入数据库后的系统构成,包括数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DBA)和用户。
数据管理技术的发展过程人工管理阶段、文件系统阶段和数据库系统阶段。
数据库系统管理数据的特点如下:1.数据共享性高、冗余少。
2.数据结构化。
3.数据独立性高。
4.由DBMS进行统一的数据控制功能。
数据模型数据模型是用来抽象、表示和处理现实世界中的数据和信息的工具。
通俗地讲,数据模型就是现实世界数据的模拟。
数据模型的三个要素包括数据结构、数据操作和数据的约束条件。
E-R图E-R图中,实体用矩形框表示,属性用椭圆形(或圆角矩形)表示,联系用菱形表示。
组织层数据模型组织层数据模型包括层次模型、网状模型和关系模型。
其中,关系模型用“二维表”来表示数据之间的联系,基本概念包括关系、元组、属性、分量、主码和域。
关系模式的数据完整性约束关系模式的数据完整性约束包括实体完整性、参照完整性和用户定义的完整性。
DBS的三级模式结构包括外模式、概念模式和内模式(一个数据库只有一个内模式)。
Unit 2在进行数据库的操作时,可能会出现以下几个问题:Good nal models should avoid the following problems: data ndancy。
n anomalies。
n anomalies。
and update anomalies.nal ___:___ R(A1.A2.An)。
目录一、数据库基础知识 (1)二、Access 2003数据库对象 (5)三、数据表 (5)四、查询 (7)五、窗体 (8)六、报表 (10)七、数据访问页 (10)八、宏 (11)九、模块和VBA(Visual Basic for Application)编程 (12)十、公共基础知识 (15)一、数据库基础知识1、数据是描述客观事物及其活动的并存储在某一种媒体上能够识别的物理符号。
信息是以数据的形式表示的,数据是信息的载体。
分为临时性数据和永久性数据。
2、数据处理的目的是为了从大量、原始的数据中抽取对人们有价值的信息。
3、数据库是以一定的组织方式将相关的数据组织在一起存放在计算机外存储器上(有序的仓库),并能为多个用户共享与应用程序彼此独立的一组相关数据的集合。
4、数据库管理系统(DBMS ,database management system,数据库系统的核心)是软件系统。
数据库管理系统提供以下的数据语言:数据定义语言(DDL),负责数据的模式定义与数据的物理存取构建;数据操纵语言(DML),负责数据的操纵,如查询、删除、增加、修改等;数据控制语言,负责数据完整性、安全性的定义与检查,以及并发控制、故障恢复等。
5、数据库系统(DBS)包括5部分:硬件系统、数据库集合(DB)、数据库管理系统(DBMS)及相关软件、数据库管理员(DBA ,database administrator)和用户(专业用户和最终用户)。
需要操作系统的支持。
6、数据库管理技术的发展:人工管理、文件管理(数据冗余大、数据的不一致性、数据关联差)、数据库管理、分布式数据库管理、面向对象数据库管理。
根本目标是解决数据共享的问题。
7、数据库系统的特点:数据结构化(是数据库系统与文件系统的根本区别),共享性高、冗余度低、易于扩充,独立性强(物理独立性和逻辑独立性),数据由DBMS统一管理和控制。
三级模式(概念模式、内模式和外模式)和二级映射(外模式/概念模式的映射、概念模式/内模式的映射)构成了数据库系统的内部的抽象结构体系。
数据库基础知识入门数据库是指按照一定的数据模型组织、存储、管理和维护数据的系统。
它是企业信息化建设中至关重要的一环,广泛应用于各个行业和领域。
作为一个数据库的基础,了解数据库的基本知识非常重要。
下面将以1500字的篇幅,详细介绍数据库的基础知识。
1. 数据库概述- 数据库定义:数据库是按照一定的数据模型组织、存储、管理和维护数据的系统。
- 数据库管理系统(DBMS):数据库管理系统是指对数据库进行管理和维护的软件系统。
- 数据模型:数据模型是描述数据、数据间联系、数据操作和数据完整性约束等的概念模型。
2. 关系型数据库- 关系模型:关系模型是一种以表格形式表示数据的数据模型,每个表格称为一个关系。
- 主键:主键是用于唯一标识关系中的每条记录的属性或属性组合。
- 外键:外键是指一个表格中的一个或多个属性,它们通过与另一个表格的主键相关联,用于建立关系模型中的关联关系。
- SQL语言:SQL(Structured Query Language)是一种用于关系数据库管理系统的数据库查询和程序设计的标准语言。
3. 非关系型数据库- 非关系型数据库的特点:非关系型数据库是一种不使用关系模型来表示数据的数据库。
- 键值数据库:键值数据库是将数据存储为键值对的形式,在许多Web应用中被广泛使用。
- 文档数据库:文档数据库是以文档形式存储数据的数据库,常用于存储复杂结构的数据。
- 列存储数据库:列存储数据库是将数据按列存储的数据库,适用于大数据量和高并发的场景。
- 图数据库:图数据库是用图的形式表示数据的数据库,适合处理复杂的关系网络。
4. 数据库设计与规范化- 数据库设计:数据库设计是指根据系统需求和数据模型,设计出数据库结构和相应的表格。
- 规范化:规范化是指通过将数据分解为更小的关系,来减少数据冗余和提高数据存储效率的过程。
- 第一范式(1NF):要求数据库中的所有属性都是原子的,即不可再分。
- 第二范式(2NF):要求数据库中的非主键属性完全依赖于主键。
数据库系统基础知识内容提要:Visual Foxpro是目前微机上流行采用了可视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,本章是全书的基础,讨论了一些数据库系统的基础知识,为后面的学习打下理论基础。
主要从数据库的基本概念、关系数据库及其设计概述、数据库技术的应用领域及发展方向三个方面进行讨论。
1.数据库的基本概念1.1信息、数据及数据处理1)信息信息是对现实世界中各种事物的存在方式或运动形态的反映,它反映的是事物之间的联系。
2)数据数据是信息的符号化表示。
3)数据处理数据处理实际上就是利用计算机对各种类型的数据进行处理。
它包括对数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作过程。
1.2数据库、数据库管理系统与数据库系统1)数据库(DataBase,简称DB)数据库,顾名思义,是存放数据的仓库。
它是按一定的结构和组织方式存储在计算机外部存储介质上的,有结构,可共享的相互关联的数据集合。
数据库中的数据具有结构化好,冗余度小,数据独立性高,共享性高和易于扩充等特点。
2)数据库管理系统(DataBase Management System,简称DBMS)数据库管理系统是一个管理数据库的软件系统。
它为用户提供了大量描述(建立)数据库、操纵(检索、排序、索引、显示、统计计算等)数据库和维护(修改、追加、删除等)数据库的方法和命令。
而且它还能自动控制数据库的安全,及数据库的数据完整。
比如:Visual FoxPro 6.0,SQL Server,Oracle等系统就是数据库管理系统。
其主要功能包括以下几个方面:(1) 数据定义功能(2) 数据操纵功能(3) 数据控制功能(4) 数据库的建立和维护功能3)数据库系统(DataBase System,简称DBS)数据库系统的目标在于存储和提取所需要的信息。
它主要由数据、硬件、软件和用户四部分构成。
1.3数据库管理技术的产生和发展随着计算机软、硬件技术的发展,在应用需求的推动下,数据管理技术经历了人工管理、文件系统、数据库系统、分布式数据库系统四个阶段。
第一章数据库系统概论本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。
本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。
重点介绍关系数据库的有关知识。
1.1 数据管理技术发展史随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。
数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。
所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。
数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。
数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。
数据处理工作由来以久,早在1880年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。
电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。
根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。
【1】人工管理阶段这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。
由于需要与计算机硬件以及各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基本程序。
数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。
这样就给数据管理的维护工作带来许多困难。
并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。
存在着大量重复数据,信息资源浪费严重。
【2】文件管理阶段这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。
这样就使得程序和数据之间具有了一定的相互独立性。
但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。
在这种情况下,数据管理中的维护工作量也是较大的。
更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。
这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。
例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中有许多数据是相同的,如姓名、年龄、性别等,由于是各部门均是根据自己的要求,建立各自的数据文件和应用程序,这样不仅造成了大量的相同数据重复存储,而且在修改时,常常需要同时修改三个文件中的数据项,如修改学生年龄,此外若需要增加一个描述学生的数据项,如通讯地址,那么所有的应用程序就必须都要进行相应的修改。
除此之外,采用文件系统来帮助进行数据管理工作,在数据的安全和保密等方面,也难以采取有效的措施加以控制。
【3】数据库管理阶段1在不断改进和完善文件系统的过程中,从六十年代后期开始,人们逐步研究和发展了以数据的统一管理和数据共享为主要特征的数据库系统。
即在数据在统一控制之下,为尽可能多的应用和用户服务,数据库中的数据组织结构与数据库的应用程序相互间有较大的相对独立性等。
与以往前数据管理方法和技术相比,利用数据库系统来进行数据管理工作具有以下三个显著特点:(1)从整体角度组织数据数据库系统与文件系统的最大差别就在于前者在描述数据时,不仅仅是对数据本身进行描述,而且对数据之间的相互联系也进行了描述。
因此在组织数据时是从一个相对较高的整体角度进行的,而不是仅仅局限于个别的数据管理应用场合。
如前面提到的人事部门、教务部门和医务部门对学生数据的管理工作,在利用数据库系统来进行管理时,若从整体考虑,其数据的组织结构如图1.1所示。
学生信息数据公用部分人事部门学生数据专用部分教务部门学生数据专用部分医务部门学生数据专用部分图1.1 学生信息数据组织结构采用这种数据组织不仅可以有效地解决了文件系统的数据组织中所存在的数据冗余以及数据一致性维护的问题。
更主要的是它可以使人们从更高的全局角度出发,合理地组织数据,从而有利于更大范围内的数据资源的共享,提高信息的使用效率。
(2)数据可为多个应用服务正因为数据库中的数据是从整体角度进行组织的,因此,数据库中所存储的数据往往就不仅局限于只为一二个应用提供服务,而是在更大范围内为仅可能多的应用提供服务,如图1.1所示的一个数据库中所存储的数据,就至少可以为三个部门的应用提供服务。
而实际上如图1.1所示的数据组织结构仅仅只是一个学校数据管理数据库中的一小部分。
与此同时由于数据库系统是以多级(层)组织模式对数据进行组织的,各级(层)模式之间的映射是由数据库系统自己完成的,这就使得数据与程序之间可以具有较高的物理和逻辑相对独立性。
正是这一点,给数据库中的数据为多个应用提供服务奠定了基础。
事实上数据库的规模越大,所能够提供的应用服务就可以越多,也就越能体现出数据库在数据管理中的优势。
当然这只是相对而言,随着数据库中数据规模的扩大,数据库应用系统的制作和维护的工作也在迅速增加。
(3)有一个数据库系统的管理软件任何数据库系统都包含一个管理软件,即数据库系统的管理软件,通常又称为数据库管理系统,它负责统一管理数据库系统中所有数据资源,是数据库系统与用户应用之间的接口,通过它,用户可以不必要了解过多的计算机硬件、软件和数据库本身许多专业知识,更不用去了解数据库系统是如何完成数据管理工作的具体细节,如文件如何打开、关闭、读、写等等,就可以通过编写一些较为简单数据库应用程序,很方便地完成在较高级别逻辑组织基础上的数据管理工作。
除此之外,数据库管理系统还负责完成在对数据库进行并发访问时,保证数据一致性的并发控制工作;保证数据安全性的访问控制工作;以及在数据库系统出现故障时,提供保证数据一致性和完整性的恢复机制等诸多数据库系统本身的各种管理控制工作。
因此这里也可以看出,数据库管理系统功能的强弱及其各项性能指标的好坏,是衡量数据库系统质量的一个极其重要的因素。
利用数据库系统进行数据管理工作,不仅可以保证数据的物理组织结构和存储设备与数据库应用程序之间保持相互独立性;同时也可以保证数据的逻辑组织结构与数据库应用程序之间保持最大可能的相互独立性,即当数据的逻辑组织结构发生变化时,数据库应用程序的变动被限制在最小的范围内。
由此可大大地减少数据库应用程序的开发与维护的工作量。
在数据库管理阶段,根据数据库系统本身所支持的数据模型的特点及所采用的相应数据库系统技术,可以认为数据库管理到目前为止已发展经历了三代,即层次网状模型代、关系模型代和面向对象模型代。
(1)层次网状模型代:流行于六十至七十年代,在这一代中的数据库系统所支持的数据模型均是层次模型或网状模型。
世界上第一个数据库系统是于1964年由美国通用电气公司开发成功的IDS(Integrated Data Store),它就是基于网状模型的数据库系统。
IBM公司于六十年代末推出了第一个商品化的层次数据库系统IMS(Information Management Sytem),它们的出现与应用为数据库技术的发展奠定了基础。
(2)关系模型代:流行于七十至八十年代,在这一代中的数据库系统所支持的数据的数据模型均是关系模型。
以关系(表)形式组织数据。
1970年Codd提出了关系数据模型,由于其具有严格的数学基础,抽象级别较高,且简单清晰,便于理解应用。
到了七十年代末,出现了不少关系数据库系统,其中具有代表性应首推IBM公司推出的SQL/DS和DB2两个商品化关系数据库系统。
进行八十年代以后,关系数据库系统已成为数据库系统发展的主流,几乎所有新推出的数据库系统产品都是关系型的,它们中不仅有用于大型机和小型机数据库产品,而且有可用于微机的数据库产品。
市场上开始出现关系数据库的系列产品,这其中发行量较大且在我国用得较多的有Oracle、Sybase、Sysbase、Informix、FoxPro等。
随着微机和计算机网络的广泛普及和应用,分布式数据库系统在八十年代后期,开始得到很大发展。
其理论和技术日趋成熟。
目前几乎所有分布式数据库系统均是关系型的,而且几乎所有主要关系数据库系统均已被扩充为分布式数据库系统。
(3)面向对象代:开始九十年代,在这一代中的数据库系统支持面向对象的数据模型。
它是数据库技术与面向对象程序设计方法相结合的产物。
作为新一代数据库系统,现在已有了一些商品化系统。
但其具体应用尚不多。
1.2 数据库系统本节主要介绍有关数据库结构和数据库系统组织的一些基本知识和概念,使读者对数据库系统的内涵有一个较为清楚的认识。
1.2.1 数据库系统概念由于数据库系统是一个由许多基本概念、技术方法和其应用对象所组成的复杂的有机整体。
很难用一两句话将其描述清楚。
但为了使读者对它有一个总体的了解,首先这里我们试着给出一个关于数据库系统的定义,即数据库系统中的数据库是一个已被规格化和结构化且相互关联的数据集合,这些数据中不存在有害的或无意义的冗余;数据的组织与存储结构与使用这些数据的程序相互独立;数据库中的数据可同时为多个应用服务;数据库中的数据定义、输入、修改和检索等所有操作均是按一种公用的且可控的方式进行。
根据这一数据库定义以及实际应用的具体数据库系统的情况,我们可以认为一个数据库系统实际上是由三部分内容组成,它们是数据库、多种应用和数据库管理系统。
这三部分之间的相互关系如图1.2所示。
(1)数据库:相互关联的且具有最小冗余的数据在其中按照一定物理组织结构存放,并且从用户和数据库管理系统角度来看,这些数据又是按一定逻辑结构组织的。