第1章 数据库基础Word格式文档下载.docx
- 文档编号:18473882
- 上传时间:2022-12-17
- 格式:DOCX
- 页数:19
- 大小:89.83KB
第1章 数据库基础Word格式文档下载.docx
《第1章 数据库基础Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《第1章 数据库基础Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。
人工管理阶段的数据管理如图1-2所示:
图1-2人式管理阶段的数据管理
2.文件系统阶段
文件系统阶段是指20世纪50年代后期至60年代中期,计算机不仅应用于科学计算,而且广泛应用于数据管理领域。
在这一阶段,由于计算机硬件有了磁盘、磁鼓等外部直接存储设备;
软件有了操作系统、数据管理软件;
数据的处理方式包括文件批处理和联机实时处理。
这一阶段的特点是:
(1)数据可以长期保存。
由于计算机广泛应用于数据管理,程序经常性地对数据进行更新和查询操作,因此数据需要以文件的形式长期保存在外存上。
(2)操作系统的文件管理提供了对数据的输入和输出管理。
程序设计人员不必过多考虑数据物理结构,减少了程序设计的工作量。
(3)数据可以共享,但数据共享性差,冗余度大。
虽然数据以文件的形式独立存储,能够被不同的程序共享使用,但文件的存储结构不统一,一个文件基本上对应于一组特定的程序。
(4)数据独立性,数据文件之间彼此孤立,不能反映数据之间的联系,数据大量冗余。
文件系统阶段的数据管理如图1-3所示。
图1-3文件系统阶段的数据管理
3.数据库系统阶段
数据库系统阶段(20世纪60年代后期至今)。
随着计算机硬件与软件技术的发展,计算机用于管理的规模越来越大,数据量剧增,数据管理需求越来越广泛,文件系统作为数据管理手段已经不能满足应用的需要。
为了解决多用户、多应用程序共享数据的需求,出现了专门管理数据的数据库系统;
数据的处理方式包括批处理、联机实时处理和分布式处理。
数据库系统阶段的数据管理具有如下特点:
(1)数据结构化。
在文件系统中,文件内部具有一定的数据结构,但文件之间相互独立,无法反映事物之间的联系。
而数据库系统中,全部数据组织成为一个结构化的整体,数据结构是文件系统与数据库系统的本质区别。
(2)数据的共享性高,冗余度低、易扩充。
数据库系统不再向某个应用而是面向整个系统描述数据,因此数据可以被多个应用程序共享使用。
数据共享可以减少数据冗余,节约存储空间,同时还能够避免数据之间的不相容与不一致。
(3)数据由数据库管理系统统一管理和控制。
数据库管理系统不仅负责结构化数据的存取管理,而且提供了数据安全性控制、数据完整性控制、并发控制和数据恢复4种控制功能。
(4)数据独立性高。
数据库系统阶段的数据管理如图1-4所示。
图1-4数据库系统阶段的数据管理
1.1.2数据库技术的基本概念
本节从一些常用术语和基本概念出发,介绍数据库的基础知识。
1.信息(Information)
信息是现实世界事物的存在方式或运动状态的反映。
信息具有可感知、可存储、可加工、可传递和可再生等自然属性,信息也是各行各业不可缺少的资源,这是它的社会属性。
2.数据(Data)
数据是数据库中存储的基本对象,是对客观事物特征的一种抽象的符号化表示,是记录下来的信息。
日常生活中数据涉及的面很广,种类也很多,如数字、文字、图形、声音、图像等都是数据。
把各种数据采用特定的二进制编码存入计算机,就是计算机中的数据。
在计算机中,程序设计人员用数据抽象出事物的特性以表示事物。
数据的形式不能完全表达其内容,需要经过语义解释。
例如,利用自然语言描述一个学生:
“张国是一名2008年入学的男大学生,1990年6月12日出生,海南人”在计算机世界里,为了存储和处理现实世界中的事物,我们就要抽象出感兴趣的事物特征,组成一个记录来描述该事物。
对上述学生,我们最感兴趣的是学生的姓名、性别、出生年月、籍贯、入学时间等,那么在计算机里就可以这样描述该生信息:
张国,男,1990-6-12,海南,2008
这就是该学生的数据,也称为记录。
数据和信息二者密不可分,信息是客观事物性质或特征在人的头脑中的反映。
信息只有通过数据形式表示出来才能被人理解和接受。
3.数据库(DataBase,DB)
数据库顾名思义就是存放数据的仓库,是长期存储在计算机内部的、有组织的、可共享的、大量的数据集合。
这种集合具有如下特点:
(1)数据库中的数据按一定的数据模型组织、描述和存储;
(2)具有较小的数据冗余度;
(3)具有较高的数据独立性和易扩充性;
(4)为所有用户共享。
4.数据库管理系统(DatabaseManagementSystem,简称DBMS)
数据库管理系统是位于用户和操作系统之间的一个数据管理软件。
如我们学习的SQLServer2005就是一个DBMS。
数据库管理系统的功能包括以下方面:
(1)数据定义功能。
数据库管理系统提供数据定义语言。
用来定义数据库的模式,定义有关约束条件,供用户建立数据库。
(2)数据操纵功能。
数据库管理系统提供数据操纵语言,实现对数据库中数据的检索、插入、删除和修改等操作。
(3)数据库的运行管理功能。
数据库管理系统统一管理数据库运行和维护,以保障数据的安全性、完整性、并发性和故障的系统恢复性。
(4)数据库的建立和维护功能。
数据库管理系统在数据建立和运行过程中,能够完成初始数据的输入、转换,数据库的转储、恢复,数据库的性能监视和分析等任务。
5.数据库系统(DatabaseSystem,DBS)
数据库系统是指计算机系统中数据库后的系统,也可是采用数据库技术的计算机系统。
为了避免混淆,通常将数据库系统称为数据库。
狭义地讲,数据库系统的构成包括数据库和数据库管理系统;
广义地讲,数据库系统的构成包括硬件、软件、数据库和用户。
数据库系统的结构如图1-5所示。
图1-5数据库系统结构图1-6数据库系统在计算机系统中的地位
数据库系统在计算机系统中的地位如图1-6所示:
1.1.3数据库系统的特点
1.数据结构化
数据不再面向某一具体应用,而是面向现实世界,具有整体的结构化。
不仅数据是结构化的,而且存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项、一个记录或一组记录。
2.数据独立性高
数据独立是指应用程序不随数据存储结构结构的改变而改变。
数据独立性是数据库领域中一个常用术语,包括数据的物理独立性和数据的逻辑独立性。
物理独立性:
指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。
也就是说,数据在磁盘上的数据库中怎样存储是由数据库管理系统(DBMS)管理的,用户程序不需要了解。
逻辑独立性:
指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。
3.数据的共享性高,冗余度低是,易扩充
数据面向整个系统,可以被多个用户、多个应用共享使用。
数据共享可以大大减少数据冗余,节约存储空间,还可以避免数据之间的不相容性与不一致性。
4.数据由数据库管理系统(DBMS)统一管理和控制
数据库的共享使多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。
因此,DBMS不仅要有最基本的数据管理功能,不必须提供以下几方面的数据控制功能:
(1)数据的安全性保护:
数据的安全性是指保护数据以防止不合法的使用造成的数据泄密和破坏。
(2)数据的完整性检查:
数据的完整性是指数据的正确性、有效性和相容性。
(3)并发控制:
当多个用户的并发进程同时存取、修改数据库时,可能会发生相互干扰而得到错误的结果或使得数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协调
(4)数据库的恢复:
是指当数据库中的数据遭到破坏或丢失,数据库管理系统必须具有将数据库从错误状态恢复到某一已知的正确状态的功能。
总之,数据库是长期存储在计算机内有组织的大量的共享的数据集合。
它可以供各种用户共享,具有较高的数据独立性。
因此,数据库管理系统在数据库建立、运行和维护时对数据库进行统一控制,以保证数据为完整性、安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库系统进行恢复。
1.2数据模型
数据库结构的基础是数据模型。
数据模型是一个描述数据、数据联系、数据语义以及一致性约束的概念工具的集合。
也可以理解为数据模型是指数据库中数据的组织形式和联系方式。
1.2.1数据模型的定义
数据模型是现实世界数据特征的抽象,是计算机对现实世界的模拟,是客观事物及其联系的数据描述。
由于计算机不能直接处理现实世界中的具体事物,因此必须使用数据模型这个工具来把具体事物抽象转化成计算机能够处理的数据。
数据模型应满足三方面要求:
一是能较真实地模拟现实世界,二是容易为人所理解;
三是便于在计算机上实现。
一种数据模型要很好地满足这三方面的要求在目前尚很困难。
因此,在数据库系统中都是针对不同的使用对象和应用目的而采用不同的数据模型。
不同的数据模型提供的模型化数据和信息的方法是不同的。
在数据抽象过程中,根据应用的目的不同,模型分为两类:
第一类是概念模型,也称为信息模型,它是按用户的观点来对数据和信息进行抽象,主要用于数据库设计;
第二类模型是数据模型,也称数据库模型,它是按计算机系统的观点建模,主要用于DBMSR的实现。
数据抽象过程如图1-7所示:
图1-7数据抽象过程
1.2.2数据模型的组成要素
数据模型由3个要素组成:
数据结构、数据操作和数据的约束条件。
数据结构是数据库对象类型的集合。
这些对象是数据库的组成部分,通常包含两类,一类是与数据类型、内容、性质有关的对象,例如网状模型中的数据项、记录;
一类是与数据之间联系有关的对象。
数据结构是对系统静态特性的描述。
数据操作是对数据库中各种对象的实例允许执行的操作的集合。
这些操作包含两类,一类是数据检索操作,另一类是数据更新(插入、修改、删除)操作。
数据操作是对系统动态特性的描述,
数据的约束条件是一组数据完整性规则的集合。
数据完整性规则是指数据及其联系所具有的制约和依赖规则,用于限定数据库状态以及状态的变化,以便保证数据的正确性、有效性及相容性。
1.2.3概念模型
概念模式实际上是现实世界到机器世界的一个中间层次,是现实世界到信息世界的第一次抽象,用于信息世界的建模,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间交流的语言。
概念模型能够方便、直接地表达应用中的各种语义知识,而且其简单、清晰的特点容易被用户所理解。
1.信息世界的基本概念
建立概念模型涉及到下面几个术语。
(1)实体(Entity):
客观存在并可以相互区别的事物称为实体。
实体可以人、事或者物;
也可以是抽象的概念或联系。
例如一个教师、一个部门、一个产品、教师与系的工作关系等都是实体。
(2)属性(Attribute):
实体所具有的某一特性称为属性。
一个实体可以由若干个属性来描述。
如学生实体可以由学号、姓名、性别、出生日期、所属系部、所属班级、入学时间等属性描述。
(2008060301,王超,男,1990,信息管理系,08电子商务202,2008)这此属性组合起来描述了一个学生实体。
(3)码(Key):
唯一标识实体的某个属性或属性组合称为码,也叫做关键字。
例如学生号是学生实体的码。
(4)域(domain):
每个属性都有一个取值范围,该取值范围称为该属性的域。
例如,学号的域为10位整数,性别的域为(男,女)。
(5)联系(Relationship):
在现实世界中,事物内部以及事物之间是有联系的,这此联系必然要在信息世界中加以反映。
一般存在两种类型的联系:
一是实体内部的联系,通常指组成实体的各属性之间的联系。
二是实体之间的联系,通常指不同实体集之间的联系。
两个实体之间的联系可以分为三类:
①一对一联系(1:
1)。
例如,一个学生对应一个学号,一个学号只能对应一个学生,则学生与学号之间具有一对一的联系。
②一对多联系(1:
n)。
例如,一个班级中有若干个学生,但每个学生只能在一个班级中学习或只能属于一个班级,则班级与学生之间是一对多联系。
③多对多联系(m:
例如,一个学生可以选修多门课程,一门课程也可以被多个学生选修,则学生和课程之间具有多对多联系。
实际上,一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例。
可以用图形来表示两实体型之间的这三类联系,如图1-8所示。
图1-8两个实体型之间的三类联系
2.概念模型的表示方法
概念模型的表示方法很多,其中最著名的是E-R方法(实体-联系方法),它用E-R图来描述现实世界的概念模型。
E-R图提供了表示实体、属性和联系的方法。
●实体:
用矩形表示,矩形框内写明实体名。
●属性:
用椭圆表示,椭圆内写明联系名,并用无向边将其与相应的实体连接起来。
例如:
学生实体具有学号、姓名、性别、出生日期、所属系部、所属班级、入学时间等属性,用E-R图表示如图1-9所示。
图1-9学生实体及属性
●联系:
用菱形表示,菱形框内写明联系名,并用无向边分别与有关连接起来,同时在无向边旁边标上联系的类型(1:
1,1:
n或m:
学生选课管理E-R图如图图1-10所示:
1.2.4常用的数据模型
按照数据库中数据采取的不同联系方式,数据模型可分为3种,分别是层次模型、网状模型和和关系模型,相应的数据库分别称为:
层次型数据库、网状型数据库和关系型数据库。
目前,数据领域中最常用的数据模型有四种:
层次模型、网状模型、关系模型和面向对象模型。
图1-10学生选课E-R图图1-11层次模型示意图
1.层次模型(HierarchicalMode)
层次型是采用树结构来描述数据之间联系的模型,依据数据的不同类型,将数据分门别类,存储在不同的层次之下。
层次模型是数据库系统最早采用的数据模型。
层次模型的数据结构由结点和连线组成,结点表示数据,连线表示数据之间的联系。
层次模型具有两个特点,第一个特点是有且只有一个结点没有双亲结点,这个结点称为“根结点”;
第二个特点是根结点以外的其他结点有且只有一个双亲结点。
层次模型示意图如图1-11所示。
从图上可以看出层次模型像一棵倒立的树,结点的双亲是唯一的。
其有一个基本的特点:
任何一个给定的记录值只有按其路径查看时,才能显出它的全部意义,没有一个子女记录值能够脱离双亲记录值而独立存在。
图1-12教员学生数据库模型
图1-12是一个教员学生层次数据库。
该层次数据库有四个记录型。
记录型系是根结点,由系编号、系名、办公地点三个字段组成。
它有两个子女结点教研室编号、教研名两个字段组成。
记录类型学生由学号、姓名、成绩三个字段组成。
记录教员由教工号、姓名、研究方向三个字段组成。
学生与教员是叶结点,它们没有子女结点。
由系到教研室、由教研室到教员、由系到学生均是一对多的联系。
图1-13是图1-12数据模型对的一个值。
层次模型的数据操纵主要有查询、插入、删除和修改。
进行插入、删除、修改操作时要满足层次模型的完整性的完整性约束条件。
进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值。
例如在图1-12的层次数据库中若新增加一名教师,但尚未分配到某个教研室,这时就不能将新教师插入数据库中。
进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除。
例如图1-12的层次数据库中,若删除计算机应用技术教研室,则该教研室所有教师的数据将全部删除。
层次模型的优点主要有:
●层次数据模型本身比较简单。
●对于实体间联系是固定的,且预先定义好的应用系统,采用层次模型来实现,其性能优于关系模型,不低于网状模型。
●层次数据模型提供了良好的完整性支持。
层次模型的缺点主要有:
●不能很好的解决多对多关系、一个结点具有多个双亲等联系,只能通过引入冗余数据(易产生不一致性)或创建非自然的数据组织来解决。
●对插入和删除操作的限制比较多。
●查询子女结点必须通过双亲结点。
●由于结构严密,层次命令趋于程序化。
图1-13教员学生数据库的一个值
2.网状模型(NetworkModel)
在现实世界中,很多事物之间的联系是非层次关系的,用层次模型表示非树形结构是很不直接的,而网状模型则可以很好解决这个问题。
网状型数据库模型将每项记录当成一个节点,节点和节点之间可以建立关联,形成一个复杂的网状结构。
网状模型是用图结构来描述数据之间联系的模型。
网状模型示意图如图1-14所示。
图1-14网状模型示意图
网状模型是一种比层次模型更具普遍性的结构,它去掉了层次模型的两个限制,允许多个结点没有双亲结点,允许结点有多个双亲结点,还允许两个结点之间有多种联系(称之为复合联系)。
因此网状模型可以更直接地描述现实世界。
下面以学生选课为例,看一看网状数据库模式是看样来组织数据的。
按照常规语义,一个学生可以选修若干门课程,某一课程可以被多个学生选修,因此学生与课程之间是多对多联系。
为此引进一个学生选课的联结记录,它由三个数据项组成,即学号、课程号、成绩,表示某个学生选修某一门课程及其成绩。
这样,学生选课数据库包括三个记录:
学生、课程和选课。
对于学生记录中的一个值,选课记录中可以有多个值与之联系,而选课记录中的一个值,只能与学生记录中的一个值联系。
学生与选课之间的联系是一对多的联系(S-SC),课程与选课之间的联系与是一对多的联系(C-SC)。
图1-15为学生选课数据库的网状数据库模式。
图1-15学生/选课/课程的网状数据库模式
网状模型的优点主要有:
●能够更为直接地描述现实世界,如一个结点可以有多个双亲。
●具有良好的性能,存取效率较高。
网状模型的缺点主要有:
●结构比较复杂,而且随看应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。
●其DDL,DML语言复杂,用户不容易使用。
3.关系模型(RelationalModel)
关系模型是用二维表来描述数据以及数据之间联系的模型。
关系模型与以往的模型不同,它是建立在严格的数学概念的基础上的,是目前最重要的一种数据模型。
关系数据库系统就是采用关系模型作为数据库组织的数据库系统。
关系模型的数据结构是二维表格。
每一个二维表由行和列组成,每一行称为一条或一个记录,描述了一个对象的实例信息;
每一列称为一个字段或属性,描述了对象的属性信息。
关系模型示意图如图1-16所示。
图1-16关系模型示意图
从关系模型示意图可以看出,关系模型的优点是数据结构简单、理论基础严密、数据与数据间的关联表示格式统一,方便描述数据间多对多的联系。
缺点是由于存取路径对用户透明,查询效率往往不如非关系数据模型。
当前使用最为广泛的数据库SQLServer2005、Oracle、DB2等都是关系模型的关系数据库管理系统。
关系模型的相关内容将在1.4.1介绍。
1.3数据库系统结构
数据库管理系统是多种多样的,可以支持不同的数据模型,使用不同的数据库语言,建立在不同的操作系统之上,数据的存储结构也都各不相同。
从数据库管理系统角度看,数据库系统通常采用三级模式结构;
这是数据库管理系统内部的系统结构。
1.3.1数据库系统的三级模式结构
数据库系统的三级模式是指数据库系统是由外模式、模式和内模式三级构成,如图1-17所示。
图1-17数据库系统的三级模式结构
(1)模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
模式是数据库数据在逻辑级上的视图。
一个数据库只有一个模式。
定义模式时不仅要定义数据的逻辑结构,而且要定义数据之间的联系,定义与数据有关的安全性、完整性要求。
(2)外模式。
外模式也称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的供述是数据库用户的数据视图。
外模式通常是模式的子集。
一个数据库可以有多个外模式,每一个外模式都是为不同的用户建立的数据视图。
外模式是保证数据库安全性的一个有力措施。
每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据是不可见的。
(3)内模式。
内模式也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
例如,索引按照什么方式组织;
数据是否压缩存储,是否加密等等。
一个数据库只有一个内模式。
1.3.2数据库的二级映象功能与数据独立性
数据库系统的三级模式是对数据的三级抽象,它把数据的具体组织留给数据库管理系统管理,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示与存储方式。
为以能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式中提供了两层映象:
·
外模式/模式映象
模式/内模式映象
(1)外模式/模式映象
外模式/模式映象是指外模式与模式之间的某种对应关系。
这些映象定义通常包含在各自外模式的描述中。
当模式改变时(例如增加新的关系、属性等),由数据库管理员对各个外模式/模式的映象作相应改变,从而使外模式保持不变。
应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
(2)模式/内模式映象
模式/内模式映象是指数据库全局逻辑结构与存储结构之间的对应关系。
当数据库的发生改变时(例如存储数据库的存储方法发生改变),由于存在模式/内模式映象,使得数据的逻辑结构保持不变,也即模式不变。
或者当数据库的存储结构改变了(例如选用了另一种存储结构),由数据库管理员对模式/内模式映象作相应改变,可以使模式保持不变。
都可以使应用程序不必改变。
从而保证了数据与程序的物理独立性,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第1章 数据库基础 数据库 基础