第1章 数据库系统基本概念Word文档下载推荐.docx
《第1章 数据库系统基本概念Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《第1章 数据库系统基本概念Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
它是描述现实世界中各种具体事物或抽象概念的可存储并具有明确意义的信息。
它是用符号记录下来的、可以识别的信息。
是用于载荷信息的物理符号。
就是说,数据是信息的一种表现形式,数据通过能书写的信息编码表示信息。
信息有多种表现形式,数据是信息的最佳表现形式。
信息是数据的内涵,数据则是表示信息的一种手段。
数据+处理=信息
⑵数据的特征
①数据有“型”和“值”之分
数据的型是指数据的结构,数据的值是指数据的具体取值。
如学生的数据由“学号”、“姓名”、“年龄”、“性别”、“所在系”等属性构成。
表1.1中,一行表明“学生”数据由“学号”、“姓名”、“年龄”、“性别”、“所在系”几个属性构成,是“学生”数据的型,从第二行起,每一行记录了一个学生的信息,是在这个型下的值。
表1.1“学生”数据
学号
姓名
年龄
性别
所在系
020001
张军
19
男
计算机系
020002
赵丽
20
女
:
数据的型不仅能表示数据的内部构成,还能表示数据之间的联系。
如假设课程数据由“课程编号”、“课程名称”、“课时数”等数据项构成,则“学生”数据和“课程”数据之间有“选课”的联系。
②数据受数据类型和取值范围的约束
数据类型是针对不同的应用场合设计的数据约束。
数据类型不同,数据的表示形式、存储方式及能进行的操作运算各不相同。
在使用计算机处理信息时,我们应当为数据选择合适的类型。
常见的数据类型有数值型、字符型、日期型和逻辑型等。
③数据有定性表示和定量表示之分
④数据应具有载体和多种表现形式
数据的载体可以是纸张、硬盘、软盘或磁带等。
数据的表现形式,它可以用报表、图形、语音及不同的语言符号表示。
事物、信息和数据自始至终贯穿于现实世界、信息世界和计算机世界。
数据库技术所研究的问题就是如何科学地组织、存储和管理数据,如何高效地获取和处理数据。
这涉及到数据处理和数据管理两个概念。
二、数据管理与数据库
1、数据处理(DataProcessing)及分类
围绕着数据所做的工作均称为数据处理。
数据处理是指对数据的收集、组织、整理、加工、存储和传播等工作。
数据处理工作分为3类:
⑴数据管理
数据管理的主要任务是收集信息,将信息用数据表示并按类别组织保存。
数据管理的目的是为各种使用和数据处理,快速、正确地提供必要的数据。
⑵数据加工
数据加工的主要任务是对数据进行变换、抽取和运算。
通过数据加工会得到更有用的数据,以指导或控制人的行为或事物的变化趋势。
如在股票系统中,对各个投资者的买卖股票的数据进行运算,绘制出股票的走势图;
在水泥生产自动化配料系统中,根据从各个检测点采集来的数据,计算出控制各个料斗的下料量。
⑶数据传播
通过数据传播,信息在空间或时间上以各种形式传递。
数据传播过程中,数据的结构、性质和内容不改变。
数据传播会使更多的人得到信息并且更加理解信息意义,从而使信息的作用充分发挥出来。
2、数据管理(DataManagement)及内容
数据管理是其他数据处理的核心和基础。
具体讲,数据管理工作应包括3项内容:
⑴组织和保存数据
⑵进行数据维护
⑶提供数据查询和数据统计功能
3、数据库(Database)及数据库中数据的性质
⑴数据库(Database)
数据库(DB):
一组长期存储在计算机内,有组织的、可共享的、具有明确意义的数据集合。
它是一个按数据结构来存储和管理数据的计算机软件系统。
它包括两层意思:
①数据库是一个实体,它是能够合理保管数据的“仓库”,用户在该“仓库”中存放要管理的事物数据,“数据”和“库”两个概念结合成为“数据库”;
②数据库是数据管理的新方法和技术,它能够更合理地组织数据、更方便地维护数据、更严密地控制数据和更有效地利用数据。
⑵数据库中数据的性质
数据库中的数据与数据文件中的数据相比有以下性质:
①数据库中的数据具有数据整体性
数据库中的数据保持了自身完整的数据结构,该数据结构是从全局观点出发建立的;
而文件中的数据一般是不完整的,其数据结构是根据某个局部要求或功能需要建立的。
如在学生档案管理系统中,从学籍管理的角度,可建立“学生”数据文件的结构为:
学生(学号,姓名,性别,出生日期,政治面貌,家庭住址,班级,专业,所在系)
从健康管理的角度,可建立“学生”数据文件的结构为:
学生(学号,姓名,性别,出生日期,身高,血型,血压,肺活量,既往病史)
但是,建立“学生”数据库时,从学生档案管理系统的全局观点出发,综合学籍管理和健康管理的需求,可建立“学生”数据库,其结构为:
学生(学号,姓名,性别,出生日期,政治面貌,家庭住址,班级,专业,所在系,身高,血型,血压,肺活量,既往病史)
从以上例子可以看出,在数据库中使用的“学生”数据全面反映了学生的各个特征,消除了大量的数据冗余;
而文件系统中的“学生”数据则是从不同的侧面反映学生的某些特征。
②数据库中的数据具有数据共享性
数据库的数据共享性表现在两个方面:
1)不同的用户可以按各自的用法使用数据库中的数据。
数据库能为用户提供不同的数据视图,以满足个别用户对数据结构、数据命名或约束条件的特殊要求。
2)多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。
三、数据库管理系统(DBMS)与信息管理系统
1、数据库管理系统(DBMS)的功能及作用
数据库管理系统简称DBMS(DatabaseManagementSystem),它是专门用于管理数据库的计算机系统软件。
(能够对数据库进行有效的管理一组计算机程序称为数据库管理系统。
)它是位于用户与操作系统之间的一层数据管理软件,是一个通用的软件系统。
它具有5个功能:
①数据定义功能
数据定义功能是指为说明库中的数据情况而进行的建立数据库结构的操作,通过数据定义可以建立起数据库的框架。
DBMS一般提供DDL来定义构成数据库结构的外模式、模式和内模式,定义两级映射,定义保证数据的完整性约束、保密限制等的约束条件。
②数据库操纵功能DML
DBMS一般提供数据操纵语言实现对数据库中数据的基本操作,即查找(或检索)、插入、修改和删除操作。
③数据库建立和维护功能
DBMS包括数据库初始数据的载入、转换;
数据库的转储、恢复;
数据库的重组织与重构造等功能。
数据库建立功能是指将大批数据录入到数据库的操作,它使得库中含有需要保存的数据记录。
数据库维护功能是指对数据的插入、删除和修改操作,其操作能满足库中信息变化或更新的需求。
④数据库的运行控制功能(核心)
数据控制主要指对数据安全性和完整性的控制。
数据安全性控制是为了保证数据库的数据安全可靠,防止不合法的使用造成数据泄漏和破坏,即避免数据被人偷看、篡改或搞坏;
数据完整性控制是为了保证数据库中数据的正确、有效和相容,以防止不合语义的错误数据被输入或输出。
⑤数据通信接口
它提供数据库管理系统与其他软件系统进行通信的功能。
现代数据库管理系统应具有:
友好的用户界面;
高级的用户接口;
数据查询处理和优化;
数据目录和管理;
数据的并发控制;
数据的恢复功能;
数据的安全性和完整性约束检查;
数据的访问控制等。
常见的数据库管理系统有:
有Access、FoxBase、FoxPro、SQLServer、Oracle、Informix、Sybase、Delphi等。
2、信息系统及分类
凡输入和输出的内容是信息的系统都称为信息系统。
信息系统按其实现的功能可以划分为信息传递系统、信息处理系统和信息管理系统。
信息传递系统只具有信息交换功能,系统工作中不改变信息的结构和状态,例如电话、程控交换系统都是信息传递系统。
信息处理系统通过对输入的信息进行转换、加工和提取等一系列操作,从而得出更有价值的新信息,其输出的信息在结构和内容方面与输入的源信息相比有较大的改变。
信息管理系统是具有数据的保存、维护和检索等功能的系统,其作用主要是数据管理,我们通常所说的事务管理系统就是典型的信息管理系统。
一个实际的信息系统往往不受这3种类别的限制,它会同时具有信息传递、信息管理和信息处理的多种功能。
3、信息管理系统特点
信息管理系统有以下3个突出特点:
⑴信息管理系统是以数据库技术为基础的。
⑵信息管理系统一般采用功能选单方式控制程序
⑶信息管理系统的功能模块大致相同
4、数据库系统(DBS)
指具有管理和控制数据库功能的计算机系统(使用数据库技术设计的计算机系统)称为数据库系统(DatabaseSystem),数据库系统主要为信息管理系统。
一个数据库系统应由计算机硬件、数据库、数据库管理系统、应用软件和数据库管理员五部分构成。
1.2数据库技术及发展
数据库技术是数据管理的最新技术,是研究数据库的结构、存储、设计、管理和使用的一门软件学科。
一、手工管理数据阶段(20世纪50年代中期以前)
1、计算机的应用
科学计算。
2、硬件
外存只有纸带、卡片、磁带,没有直接存取的储存设备。
3、软件
没有操作系统,没有管理数据的软件。
4、数据处理方式
批处理。
5、特点
(1)数据不保存,其主要原因是当时的计算机主要用于科学计算。
(2)数据均由应用程序自己管理,没有统一的负责管理数据的专门软件系统。
(3)数据不具有独立性,无法进行数据共享。
由于数据是面向应用程序的,不仅数据的逻辑结构和物理结构的设计是由应用程序承担的,而且它们的修改也会引起应用程序的修改,这样必然导致程序员的负担很重,且程序与程序之间将产生大量的冗余数据.
二、文件系统管理数据阶段(从20世纪50年代后期到60年代中期)
科学计算、数据管理。
外储存器有了磁盘、磁鼓等直接存取的存储设备。
操作系统。
文件批处理、联机实时处理。
⑴管理的数据以文件的形式长久地被保存在计算机的外存中。
⑵文件系统有专门的数据管理软件提供有关数据存取、查询及维护功能。
程序和数据有了一定的独立性,并分开存放
⑶文件系统中的数据文件已经多样化。
⑷文件系统的数据存取是以记录为单位的。
6、缺点
⑴文件系统的数据冗余度大
数据文件是面向应用设计,是与应用程序相对应的。
当不同的应用程序所需要的数据有部分相同时,也必须建立各自的文件,而不能共享相同的数据,因此就造成了数据冗余度(Redundancy)大、浪费存储空间的问题。
如学生档案管理系统中,面向“学籍管理”和“健康管理”两种不同的应用分别建立的“学生”数据文件,学号,姓名,性别,出生日期存在数据冗余。
⑵文件系统中缺乏数据与程序独立性
在文件系统中,由于数据文件之间是孤立的,不能反映现实世界中事物之间的相互联系,使数据间的对外联系无法表达。
同时,由于数据文件与应用程序之间缺乏独立性,使得应用系统不容易扩充。
文件系统的这种缺点反映在以下3个方面:
1)数据共享性差,数据有较大的冗余。
文件系统中的数据文件是为某一特定应用服务的,数据文件的可重复利用率非常低。
2)当数据的逻辑结构改变时,必须修改它的应用程序,同时也要修改文件结构的定义。
3)应用程序的改变,如应用程序所使用的高级语言的变化等,也将影响到文件数据结构的改变。
三、数据库系统阶段(从20世纪60年代后期至今)
计算机用于管理的规模更为庞大,应用越来越广泛,数据量也急剧增加,数据共享的要求也越来越强。
数据库在企业管理、交通运输、情报检索、军事指挥、政府管理和辅助决策等各个方面得到了广泛的应用。
出现了内存大、运行速度快的主机和大容量的硬盘,微型机也出现了。
出现了专门用于数据管理的数据库管理系统,如IBM公司的IMS系统。
4、特点
⑴数据库设计时面向数据模型对象,采用特定的数据模型,使数据结构化
数据库设计时站在全局需要的角度抽象和组织数据,完整地、准确地描述数据自身和数据之间联系的情况,整个设计过程以数据模型为基础,设计出的数据库符合一定的数据模型。
如设计一个关系型数据库,先从全局需要建立数据库的概念模型,再将概念模型转换为关系模型。
数据库系统的数据冗余度小、数据共享度高
数据库系统允许多个用户或多个应用程序同时访问数据库中的相同数据,数据不再面向某个应用,而是面向整个系统,从而支持了数据的共享,节省了存储空间,大大减少了数据冗余,避免了数据之间的不相容性与不一致性。
数据冗余度小是指重复的数据少。
减少冗余数据可以带来以下优点:
1)数据量小可以节约存储空间,使数据的存储、管理和查询都容易实现。
2)数据冗余小可以使数据统一,避免产生数据的不一致问题。
3)数据冗余小便于数据维护,避免数据统计错误。
数据共享度高使得数据库系统具有以下3个方面的优点:
1)系统现有用户或程序可以共同享用数据库中的数据。
2)当系统需要扩充时,再开发的新用户或新程序还可以共享原有的数据资源。
3)多用户或多程序可以在同一时刻共同使用同一数据。
⑶数据库系统的数据和程序之间具有较高的独立性
数据库系统提供了三级数据抽象(视图级抽象、概念级抽象和物理级抽象)能力和三种数据库模式(外模式、模式和内模式),实现了数据的物理独立性和逻辑独立性。
数据与程序的相互独立,使得可以把数据的定义和描述从应用程序中分离出去,而把数据的存取由数据库管理系统统一进行管理,用户在应用程序中不用考虑存取路径等细节,大大简化了应用程序的编制及应用程序对数据的维护和修改。
数据和程序相互之间的依赖性低、独立性高的特性称为数据独立性高。
数据库中的数据独立性可以分为两级:
数据库系统阶段应用程序和数据之间的联系
①数据的物理独立性
数据的物理独立性(PhysicalDataIndependence)是指应用程序对数据存储结构(也称物理结构)的依赖程度。
数据物理独立性高是指当数据的物理结构发生变化时(例如当数据文件的组织方式被改变或数据存储位置发生变化时),应用程序不需要修改也可以正常工作。
②数据的逻辑独立性
数据库中的数据逻辑结构分全局逻辑结构和局部逻辑结构两种:
数据全局逻辑结构指全系统总体的数据逻辑结构,它是按全系统使用的数据、数据的属性及数据联系来组织的。
数据局部逻辑结构是指一个用户或程序使用的数据逻辑结构,它是根据用户自己对数据的需求进行组织的。
局部逻辑结构中仅涉及与该用户(或程序)相关的数据结构。
数据的逻辑独立性(LogicalDataIndependence)是指应用程序对数据全局逻辑结构的依赖程度。
数据逻辑独立性高是指当数据库系统的数据全局逻辑结构改变时,它们对应的应用程序不需要改变仍可以正常运行。
⑷有统一的数据控制功能。
(安全性。
、完整性、并发控制、数据恢复)
数据库系统中的数据由DBMS统一管理,而且管理的是有结构的数据,
数据的安全性控制(SecurityControl)是指保护数据库,以防止不合法的使用造成的数据泄漏、破坏和更改。
数据安全性受到威胁是指出现了用户看到了不该看到的数据、修改了无权修改的数据、删除了不能删除的数据等现象。
数据安全性被破坏有两种情况:
1)用户有超越自身拥有的数据操作权的行为。
2)出现了违背用户操作意愿的结果。
数据库的安全性控制措施通常有:
视图、授权、数据加密、用户标识、审计等。
数据的完整性控制(IntegrityControl)是指为保证数据的正确性、有效性和相容性,防止不符合语义的数据输入或输出所采用的控制机制。
数据库系统的完整性控制包括两项内容:
一是提供进行数据完整性定义的方法,用户要利用其方法定义数据应满足的完整性条件;
二是提供进行检验数据完整性的功能。
数据库的数据控制机制还包括数据的并发控制和数据恢复两项内容。
数据的并发控制是指排除由于数据共享,即用户并行使用数据库中的数据时,所造成的数据不完整和系统运行错误问题,如锁、事务。
数据恢复是通过记录数据库运行的日志文件和定期做数据备份工作,保证数据在受到破坏时,能够及时使数据库恢复到正确状态。
⑸数据库中数据的最小存取单位是数据项
(6)为用户提供了方便的用户接口。
用户可以使用查询语言(如SQL)或终端命令对数据库进行访问,也可以借助高级语言(如C语言、COBOL语言等)采用程序方式对数据库进行操作。
1.3数据库系统的结构
一、数据库系统的体系结构
数据库系统的体系中由支持系统的计算机硬件设备、数据库及相关的计算机软件系统、开发管理数据库系统的人员三部分组成。
简单地说,数据库系统中包括硬件、软件和干件。
1、数据库系统需要的硬件资源及对硬件的要求
支持数据库系统的计算机硬件资源包括CPU、内存、外存及其他外部设备。
在进行数据库系统的硬件配置时,应注意以下3个方面的问题:
⑴计算机内存要尽量大。
⑵计算机外存也要尽量大。
⑶计算机的数据传输速度要快。
2、数据库系统的软件组成
数据库系统的软件中包括操作系统(OS)、数据库管理系统(DBMS)、主语言系统、应用程序软件和用户数据库。
3、数据库系统的人员组成及数据库管理员的职责
数据库系统的人员由软件开发人员、软件使用人员及软件管理人员组成。
软件管理人员称为数据库管理员(DataBaseAdministrator,简称DBA),他们负责全面地管理和控制数据库系统。
承担着创建、监控和维护整个数据库结构的责任。
DBA的素质在一定程度上决定了数据库应用的水平,所以他们是数据库系统中最重要的人员。
数据库管理员的职责为:
⑴应参与数据库和应用系统的设计的全过程。
⑵应参与决定数据库的存储结构和存取策略的工作。
⑶负责定义数据的安全性要求和完整性条件
⑷负责监视和控制数据库系统的运行,负责系统的维护和数据恢复工作。
⑸负责数据库的改进和重组。
二、数据库管理系统的功能结构
数据库管理系统能够提供以下4个方面的主要功能:
1、数据定义功能
数据定义语言(DataDescriptionLanguage,简称DDL)
2、数据操纵功能
数据操纵语言(DataManipulationLanguage,简称DML),DML有以下两种形式:
⑴宿主型DML
⑵自主型DML
3、数据库的建立和维护功能
4、数据库的运行管理功能
三、数据库系统的三级数据模式结构(从DBMS的角度看的数据库系统结构)
数据库的数据模式由外模式、逻辑模式和内模式三级模式构成,其结构如图所示。
数据库系统的三级模式结构
1、数据库的三级模式结构
数据库的三级模式是指逻辑模式、外模式、内模式。
⑴逻辑模式及概念数据库(概念模式)
逻辑模式(LogicalSchema)也常称为模式(Schema),它是对数据库中数据的整体逻辑结构和特征的描述。
逻辑模式是系统为了减小数据冗余、实现数据共享的目标并对所有用户的数据进行综合抽象而得到的统一的全局数据视图。
一个数据库系统只能有一个逻辑模式,以逻辑模式为框架的数据库为概念数据库。
⑵外模式及用户数据库(子、用户模式)
外模式(ExternalSchema)也称子模式(Subschema),它是对各个用户或程序所涉及到的数据的逻辑结构和数据特征的描述。
子模式是完全按用户自己对数据的需要、站在局部的角度进行设计的。
由于一个数据库系统有多个用户,所以就可能有多个数据子模式。
由于子模式是面向用户或程序设计的,所以它被称为用户数据视图。
从逻辑关系上看,子模式是模式的一个逻辑子集,从一个模式可以推导出多个不同的子模式。
以子模式为框架的数据库为用户数据库。
使用子模式可以带来3个优点:
1)由于使用子模式,用户不必考虑那些与自己无关的数据,也无须了解数据的存储结构,使得用户使用数据的工作和程序设计的工作都得到了简化。
2)由于用户使用的是子模式,使得用户只能对自己需要的数据进行操作,数据库的其他数据与用户是隔离的,这样有利于数据的安全和保密。
3)由于用户可以使用子模式,而同一模式又可派生出多个子模式,所以有利于数据的独立性和共享性。
⑶内模式及物理数据库
内模式(InternalSchema)也叫存储模式(AccessSchema)或物理模式(PhysicalSchema)。
内模式是对数据的内部表示或底层描述。
内模式涉及定义数据的数据项、记录、数据集、索引和存取路径在内的一切物理组织方式等属性,同时还包括数据的优化性能、响应时间和存储空间需求,规定数据的记录位置、块的大小与数据溢出区等。
以物理模式为框架的数据库为物理数据库,即存放在外存的实际数据文件。
用户数据库、概念数据库和物理数据库三者的关系是:
概念数据库是物理数据库的逻辑抽象形式;
物理数据库是概念数据库的具体实现;
用户数据库是概念数据库的子集,也是物理数据库子集的逻辑描述。
一个数据库中只有一个内模式和一个模式,但可有多个外模式。
数据库的内模式依赖于它的全局逻辑结构,但独立于外模式,也独立于具体的存储设备。
它是将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行有效的组织,以达到较好的时间和空间效率。
2、数据库系统的二级映象技术及作用
数据库系统的二级映像技术是指外模式与模式之间的映像、模式与内模式之间的映像技术。
⑴外模式/模式的映像及作用
外模式/模式之间的映像,定义并保证了外模式与数据模式之间的对应关系。
外模式模式的映像定义通常保存在外模式中。
当模式变化时,DBA可以通过修改映像的方法使外模式不变;
由于应用程序是根据外模式进行设计的,只要外模式不改变,应用程序就不需要修改,因而保证了数据的逻辑独立性。
⑵模式/内模式的映像及作用
模式/内模式之间的映像,定义并保证了数据的逻辑模式与内模式之间的对