第四章-信息系统的数据管理

上传人:悦** 文档编号:159427953 上传时间:2022-10-09 格式:DOCX 页数:26 大小:364.23KB
收藏 版权申诉 举报 下载
第四章-信息系统的数据管理_第1页
第1页 / 共26页
第四章-信息系统的数据管理_第2页
第2页 / 共26页
第四章-信息系统的数据管理_第3页
第3页 / 共26页
资源描述:

《第四章-信息系统的数据管理》由会员分享,可在线阅读,更多相关《第四章-信息系统的数据管理(26页珍藏版)》请在装配图网上搜索。

1、第四章信息系统的数据管理导入语:信息系统作为提供信息, 辅助人们对环境进行控制的工具,是建立在大量数据的有效管理的基础上的。数据库技术作为计算机信息系统与应用系统的核心技术和重要基础,把信息系统中大量的数据按照一定的模型组织起来,并提供存储、维护和检索数据的功能,帮助用户和时准确地从系统中获取相应的信息。学完本章,应掌握以下内容:了解传统的文件组织和管理技术了解数据库系统的数据组织方式掌握四种数据模型的特点掌握关系型数据库的数据结构和完整性约束了解数据库的新发展第一节数据结构与数据处理作为国内葡萄酒产业的领军企业,自有葡萄种植仅能满足张裕制酒生产对葡萄需求的一部分,除此之外,张裕在山东半岛和全

2、国各地还拥有几万家葡萄供应农户和若干家初榨葡萄 原酒供应商,而对这些葡萄供应商的管理,已成为张裕葡萄酒品质的重要保障。葡萄酒品质高低,是各种因素综合作用的结果,葡萄的品种、产区、年份、树龄以和橡 木桶窖藏等等,都会对葡萄酒的品质产生影响。事实上,在葡萄制酒行业,原材料采购对于产成品品质关系十分重大。为了与葡萄供应商建立稳固的供应关系, 最大限度地保证葡萄供应的质量, 张裕十分重 视对自己的葡萄种植农户提供葡萄种植技术指导,并根据葡萄质量进行优质优价地收购, 并且,张裕还特别设定了最低保护收购价,以真正保证葡萄供应农户的利益企业移动三步曲:实现海尔供应链管理最大化,美国讯宝科技公司,http:/

3、symbol- 1.pdfo张裕构建信息化供应商管理系统的实践始于上世纪90年代,当时的做法是首先建立供应商数据库,然后对每家供应商的葡萄供货进行种类、糖度、水分等指标的详细检测,这些葡萄指标数据经录入人员手工录入计算机后,系统会自动给出每一家供应商每一次供货的综合指标分析。通过这一分析,一方面,决策层可以根据供货商和产出地准确分析葡萄供货质 量,控制采购进度,和时发现并有效阻止不良供货进入生产环节,另一方面,也可以为技术部门进行产品工艺改进提供可靠依据,从而有效保证了葡萄酒产品的生产进度和质量。一个有效的信息系统能给用户提供和时、准确和相关的信息,数据库作为系统的核心, 就必须很好的组织和维

4、护数据文件,帮助用户方便的实现对数据的访问和检索。一、数据结构与数据存储数据结构是数据组织和存储的框架,由若干个文件或表组成,文件和表中存放的是需要与系统交互的实体, 包括人、地点、事情或事件。数据资源的组织经历了文件系统管理和数 据库管理。(一)文件系统阶段20世纪50年代后期至60年代中期,计算机不仅用于科学计算,还用于信息管理。随 着数据量的增加,数据的存储、检索和维护问题成为紧迫的需要,数据结构和数据管理技术迅速发展起来。此时,外部存储器已有磁盘、磁鼓等直接存取存储设备。软件领域中出现了专门管理外存的数据的文件系统。数据处理的方式由单纯的批处理,发展到批处理和联机实时处理共用。文件系统

5、中数据管理的方法是利用文件进行管理,一个文件是相关记录的集合,与某特定应用相关的所有记录都可以收集在一个特定的应用文件中,数据管理就是对应用文件的管理。多数组织都拥有大量的特定应用数据文件,每个文件与企业所完成的具体处理有关,要为每个应用程序分别创建和存储数据文件,即如图4-1所示。在文件管理阶段,组织往往是没有数据总体规划的, 只是在应用过程中, 各部门根据需 要不断的开发自己的应用程序, 以和与其对应的数据文件。 随着时间的推移,文件和应用程 序会变得越来越多。 由于文件数量增多, 需要有一系列的文档来管理其中的项目, 而且,一 些数据项会重复出现在不同部门的文件和文档中,整个文件系统会变

6、得越来越复杂, 需要专门的程序员分别维护各自的文件和程序。 这造成了传统文件环境下, 数据冗余严重,程序与 数据独立性差,缺乏灵活性,安全性差等问题。数据冗余是指相同的数据在两个或多个数据文件中重复出现。例如在企业,当不同部门对销售信息进行收集时,都会涉和到产品的名称,规格,数量,单价等细节信息,但是不同 部门对这些信息的定义和应用都不同,即使不同应用程序所需数据有部分相同时,仍需建立各自的数据文件,不能共享,这也造成了数据维护困难,各数据文件的一致性难以保证。数据与程序独立性仍不高,文件基本上面向应用。数据文件和维护它的相关应用程序之 间过分依赖,每个应用程序都得对它所处理的数据位置和性质进

7、行描述,有时这种描述可能比实际的数据处理部分更长。数据的任何改变都需要对使用它的应用程序作相应的修改。为了满足新应用程序的数据需求,程序员要编写复杂的程序从已有的文件记录中抽取数据建立 新的文件以满足需要。这种依赖性也使得系统不易扩充,无论数据逻辑结构改变, 还是应用程序的变化都将导致文件的修改。另外,由于传统文件管理是借助操作系统的文件管理功能进行数据文件的管理,对数据几乎没有特定的控制手段,任何人都可以方便的进行数据文件的拷贝,在数据的存取安全上难以控制。(二)数据库系统阶段60年代后期,计算机在管理中的应用更加广泛,数据量急剧增大,对数据共享的要求 越来越迫切;为了解决多用户、多应用共享

8、数据的需求, 使数据为尽可能多的应用程序服务, 逐渐出现了数据库系统。数据库将逻辑相关的记录和文件整合在一起进行统一管理。通过对数据的集中管理和最小化的数据冗余,以有效地服务于多个应用程序。在数据库中,数据不再仅仅服务于某个应用程序或用户,而成为一个组织甚至组织之间的共享资源。有数据库管理系统的统一管理, 实现了数据与程序的真正独立,并且最大限度的降低了数据冗余,充分做到了数据为多个用户共享,提高了数据的一致性,并且支持多用户、多任务的访问。通过数据库管理系统进行 数据的访问,对数据安全的保密性和完整性要求提供了保证。数据库系统解决了传统文件系统的不足,满足日益发展的数据处理的需要,是在文件系

9、统的基础上发展起来的一种理想的数据管理技术。数据库系统(Database System,简记为DBS )是由计算机硬件、软件和DB、DBMS、应用程序、数据库管理员和用户等数据资源组成,实现有组织地、动态地存储大量关联数据、方便多用户访问的系统。(三)数据管理的进展数据管理历经两个阶段(表4-1),数据库系统是在文件系统的基础上发展而成的,同时又解决了文件系统中,用户必须自己处理其所用的全部文件的物理组织和存储细节的缺 陷。数据库将这些工作交给DBMS来做,使信息系统从以加工数据为主转向了数据共享管理的新阶段。表4-1不同数据管理阶段的比较文件系统数据库系统时间50年代后期到60年代中期:60

10、年代后期开始基本特征具有面向应用的数据管理功能,工作 方式是仍然是分散、非手工的。支持多用户、多应用共享数据的需 求应用背景硬件:外存有了很大的发展,除了磁 带机,还出现了大容量的硬盘和灵活 的软磁盘软件:出现了操作系统、文件管理系 统和多用户的分时系统,专用于商业 事务管理的高级语言 COBOL硬件:大容量磁盘已经出现、硬件 价格大幅下降软件:联机实时处理业务增多、面 向组织的复杂数据结构、数据冗余 度小,易于扩充、数据与程序独立、 统一的数据控制功能。主要特点数据管理方面,实现了数据对程序的 一定的独立性,数据不再是程序的组 成部分,修改数据不必修改程序,数面向全组织的复杂数据结构。数据

11、库中的数据结构不仅描述了数据自 身,而且描述了整个组织数据之间据有结构,被组织到文件内,存储在 磁带、磁盘上,可以反复使用和保存。 文件逻辑结构向存储结构的转换由软 件系统自动完成,系统开发和维护工 作得到减轻。的联系,实现了整个组织数据的结 构化。文件类型有了索引文件、链接文件、直接存取 文件等,而且能对排序文件进行多码 检索。主要以表的形式存放在数据库里数据存取以记录为单位以表为单位数据存储方式在系统中,数据是按一定层次组织数据的。首先是位组成字节,字节组成字段,向上依 次组成记录、文件和数据库。位是计算机中最小的数据单位,其值为0或1;多个位组成字节,一个字节代表一个字符,字符可以是字母

12、、数字或其他符号;多个字符组成一个词或一个完整的数字,称为字段;若干个相关的字段,如学生姓名、性别、专业组成一个记录;若干个相同类型记录组成一个 文件;若干相关文件的集合组成一个数据库。数据库的数据组织层次如图 4-2所示,比特、字符、字段、记录、文件和数据库就构成 了数据层次。数据库中不仅包括了所有这些数据层次,还包括了它们之间的关系。图4-2数据组织层次二、数据库管理模式数据库管理系统(Database Management System,简记为DBMS )是位于用户与操作系 统(OS)之间的一层数据管理软件。如图4-3所示,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新

13、和各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型等。(一)数据库管理的特点数据冗余度小,易于扩充。由于数据库从组织的整体来看待数据, 数据不再是面向某一 特定的应用,而是面向整个系统,减少了数据冗余和数据之间不一致现象。 在数据库系统下, 可以根据不同的应用需求选择相应的数据加以使用,使系统易于扩充。数据与程序独立。数据库系统提供了数据的存储结构与逻辑结构之间的映射功能和总体逻辑结构与局部逻辑结构之间的映射功能,从而使得当数据的存储结构改变时,逻辑结构保持不变,或者当总体逻辑结构改变时,局部逻辑结构可以保持不变,从而实现了数据的物理 独立性和逻辑独立性,

14、把数据的定义和描述与应用程序完全分离开。统一的数据控制功能。数据库系统提供了数据的安全性控制(Security)和完整性控制(In tegrity),允许多个用户同时使用数据库资源。数据库的上述特点, 使得信息系统的研制从围绕加工数据的以程序为中心转移到围绕共享的数据库来进行,实现了数据的集中管理, 提高了数据的利用率和一致性,从而能更好地为决策服务。因此,数据库技术在信息系统应用中正起着越来越重要的作用。(二)数据库管理系统功能定义数据库的功能。包括定义数据的整体逻辑功能(模式)、局部逻辑结构(外模式)、存储结构(内模式),还包括保密定义和信息格式定义等,并把数据库所描述的对象、属性 和其联

15、系的自然语言含义与计算机内描述形式的对照各种模式、外模式的宣言和说明存放在数据库内以备查阅(称为数据词典)。管理数据库的功能。包括控制数据库系统的运行,控制用户的并改性访问(即同时有两 个或多个用户访问一个对象);执行对数据库的安全性、保密性、完整性检验,实施对数据 的检索、插入、删除、修改等操作。维护数据库的功能。 此功能包括初始时装入数据库、运行时记录工作日志、 监视数据库性能、在性能变坏时重新组织数据库。在用户要求或系统设备发生变化时修改和更新数据库, 在系统软硬件发生变化时修改和更新数据库。在软、硬件系统出现故障时恢复数据库。数据通信的功能。负责数据传输这一部分工作,通常与操作系统协同

16、完成。此外,实现分时系统和远程作业输入的接口。第二节 数据库系统(DBS)一、数据库系统的构成数据库系统是实现有组织、动态的存储尤其是关联数据、方便多用户访问的计算机软件、 硬件和数据资源组成的系统,简单地说,就是采用了数据库技术的计算机应用系统。1 .硬件带有数据库的计算机系统对其硬件的性能要求更高,要有足够在的内存以存放操作系 统、数据库管理系统的例行程序、应用软件、系统缓冲区中的数据库的各种表格等内容。需要有大容量的直接存取的外存储设备,此外,还应有较强的通道能力。2. 软件操作系统:在数据库系统中,一般管理数据库的软件(DBMS是借助于操作系统实现数据处理过程中的内外存数据交换的,所以

17、这里的操作系统应能支持数据库管理系统的工作。数据库管理系统(DBMS ):数据库管理系统是对计算机的再一次扩充,它完成对数据 的定义、管理、维护和各个层次之间的映像等。具体功能后面还将专门介绍。应用软件包和应用程序:与一般计算机系统类似,为了适应应用的需要,可以在数据库 管理系统的基础上建立应用软件包,提供给数据库的应用程序员和数据库管理人员使用。同时,用户则通过其应用程序来使用数据库,完成数据处理工作,获得所需信息。3. 人员数据库系统中的人员主要有四类。系统分析员:他们负责系统的需求分析、 规范说明。他们必须与业务部门即各个用户和 其他工作人员,特别是数据库管理人员密切配合,以决定数据库系

18、统的具体构成。系统程序员:负责设计、实现和维护系统程序,特别是DBMS实现数据组织与存取的各种功能。应用程序员:负责编制和维护应用程序,应用程序员也是系统的用户。数据库管理员(DBA ):负责全面的管理数据库的工作。二、数据库的逻辑结构DBMS允许用户逻辑地、抽象地处理数据而不必关心数据在计算机中的存放方式,主 要依靠其建立在三层模式结构上的二级映射,如图4-4所示。数据库的三级模式结构主要包括外模式、模式和内模式。图4-4数据库的三层模式结构(一)数据库的三级模式结构1. 模式模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。定义模式时不仅要定义数据的逻辑

19、结构,例如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等,而且要定义与数据有关的安全性、完整性要求,定义这些数 据之间的联系。2. 夕卜模式外模式也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图, 是与某一应用有关的数据的逻辑表示。3. 内模式内模式也称存储模式,它是数据物理结构和存储结构的描述,是数据在数据库内部的表示方式。例如,记录的存储方式是顺序存储、还是随机存储;索引按照什么方式组织;数据 是否压缩存储,是否加密;数据的存储记录结构有何规定。一个数据库只有一个内模式,它 物理存在于各种存储设备上

20、。(二)三个模式间的映射1. 外模式/模式映射这层映射定义了该外模式与模式之间的对应关系。模式描述的是数据的全局逻辑结构, 外模式描述的是数据的局部逻辑结构,外模式是模式的部分抽取, 因此对应同一个模式可以有任意多个外模式,当模式改变时,由数据库管理员对各个外模式/模式的映象作相应改变, 可以使外模式保持不变,从而应用程序不必修改,保证了数据的逻辑独立性。2. 模式/内模式映射模式/内模式映射定义了数据全局逻辑结构与存储结构之间的对应关系,内模式是模式的物理实现,模式则是内模式的逻辑表示。当数据库的存储结构改变了,例如采用了更先进的存储结构,由数据库管理员对模式/内模式映象作相应改变,可以使模

21、式保持不变,从而保证了数据的物理独立性。三模式间的关系三个模式反映了数据库的三种不同的层面:模式表示了概念级数据库, 是数据库连接用户和存储设备的接口层;内模式表示了物理数据库,是数据库的存储层;外模式表示了用户 数据库,是实现数据库操作的用户层。接口层和存储层只有一个,而用户层可有多个, 一个应用对应一个用户层,如图 4-5所示。7 / 26丁耳妣笆巧lO10(0LUJ00(1103李三1200.134王丁10LC号H覺L01李二IODOLIB生二11 COIS4王匸mo【劭王二1100甲户Mt图4-5数据库的三层应用结构i古工怪w胡iiuR10 DQ划认102A13E103竽二禺12DDI

22、d-三C123BOD43rnD1科同1J010k125于二丁noo30I:叫:23XJ三、数据模型为了使数据库中的数据客观真实地反映事物和事物之间的关系,人们往往要借助数据模型来抽象表示现实世界中的内容,再按照计算机系统的观点对数据建模。数据模型通常由数据结构、数据操作和完整性约束三部分组成。由于数据结构是刻画一个数据模型性质最重要的方面,所以通常根据数据结构特征来命名数据类型。这种定义的数据模型是表示实体类型和实体间联系的模型。(一)层次模型用树型(层次)结构表示实体类型和实体间联系的数据模型称为层次模型(hierarchicalmodel)。这种结构可以非常直观地描述现实世界中存在的各种层

23、次关系,譬如上级与下级, 总厂与分厂等。层次模型主要包括结点和连线,每个结点表示一个实体集,连线表示上下层实体之间的联系。在图4-6中,位于层次模型最上层的起始结点“院系”,称为根结点,它是惟一没有上层结点的结点;下层的专业和研究所是院系的子结点,院系是它们的父结点;由于二者共有一个父结点,它们是兄弟结点的关系;没有子结点的称为叶结点,研究所、教师和学生都是叶结点。图4-6层次模型结构层次模型的特点是:(1)根结点惟一;(2)除了根结点以外的结点有惟一的父结点。按 照层次模型存储的实体值,只有按照一定的路径找寻才能显示出其全部意义,既包括结点的记录值,也包括与上层结点之间的内在联系。在硬盘上,

24、记录之间的联系通过指针来实现, 如图4-7所示。与文件系统的数据管理方式相比,层次模型的查询效率较高,用户和设计者逻辑数面对的是逻辑数据而不是物理数据,用户不必花费大量的精力考虑数据的物理细节。据与物理数据之间的转换由DBMS完成。J/D01匚商骨理409|D13家族企业研究所D02财务管JS I 407 (T丨L x文科搂|一T01T02李丽|*1T0S*张力IS24501刘红p $24501李波图4-7层次模型的链接实例层次模型有个缺点:除根结点以外,所有结点都只有惟一的父结点,所以只能表示1 :N联系,面临M : N联系时,必须设法将其分解为多个1: N联系,才能用层次模型来表示。但是这

25、种辅助手段实现较复杂。(二) 网状模型由于现实世界中事物之间的联系更多的是纵横交错的非层次关系,取消层次模型中父结点和根结点惟一的限制,就得到了一个网络结构的模型。这种用网络结构表示实体间联系的 数据模型称为网状模型(network model )。没有层次模型中结点限制的网状模型可以直接表示M: N联系。由于 M : N联系包含了 1: N联系,所以层次模型可以看作是网状模型的特殊形式,网络模型也是用连线来表示 实体间的关系,结点表示实体集。由于网状模型中父结点与子结点之间的关系不惟一,所以在模型中应指明每一个联系并为其命名。为了清晰的表达实体间的M: N联系,可以引入一个相关实体Gray

26、B . Shelly,Thomas J. Cashman, Harry J . Rosenblatt. System Analysis and Design (Fifth Edition) . 2003,如图4-8所示,为了说明学生和课程之间的M : N联系,引进了一个学生选课的联结记录,将原来的M: N联系转变为学生-选课和课程-选课的两个1: N联系进行说明,即一个学生可以选择多门课程,同时一门课也可以同时被多个学生选择。11 / 26SA90 S3C:7OS,C,85图4-8网络模型结构网状模型的记录之间联系也是通过指针实现,但模型中的连线或指针的连接更加复杂。比如对于学生(学号,姓名,

27、年龄,性别)和课程(课程号,课程名)之间的M : N联系,通过引入相关实体一一选课(学号,课程号,成绩),分拆成两个1 : N联系后,建立了学生-选课和课程-选课之间的指针连接,如图4-9所示。C2大学英语门商零数学图4-9网状模型实例网状模型的缺点是数据结构复杂和编程复杂。(三)关系模型关系模型(relational model)的主要特征是用二维表格表达实体集。与前两种模型相比,关系模型的数据结构简单,容易为初学者理解。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系。在层次模型和网状模型中,数据存储在文件中,实体之间的联系是通过指针来连接的。在关系

28、模型中,实体本身的数据和实体之间的联系均用二维表来表示,并存储于文件中。例如前面图中所示学生和课程的M : N联系可用图4-10中的三张表来表达,学生登记表和课程登记表用来存储学生和课程两个实体集的数据,实体之间的关系则用学习登记表来表示。学习登记表中的学号和课程号是两个实体集的关键字,关键字可惟一确定某个具体的学生或某门课程,从而说明学生选择了哪些课程以和每门课程的选修情况。学生登记表学号姓名年龄性别24501刘红20女2450223男24503陈飞2124504抿斌20课稈登记表课程弓课程名学时数C001高等数学150C002大学英语100C003法律基础50C004匸程制图301学号课程

29、号分数24501C0019024501C0029024501C0038524501C0048724502C0019024503C0016524503C0027024503C0045024504C0017024504C00285图4-10关系模型实例(四)面向对象模型面向对象数据库 OODB (Object Oriented Data Base ),是面向对象技术与数据库技术的有 机结合。OODB既需要具备传统数据库的必备功能,也需要具有面向对象方法的基本特征。面向对象数据模型使用面向对象观点来描述现实世界实体、实体间联系等内容的模型。对象是以对象名封装的数据结构和可施加在这些数据上的私有操作。

30、与前面的数据模型相 比,面向对象模型不仅描述实体的一系列静态值,而且包含了对这些静态值上的操作的集合,即每一个对象是其状态与行为的封装。该模型是用对象和类来表示实体类型和实体间联系的数据模型(图4-11)。关于对象和类将在第八章详述。类丈学生图4-11面向对象模型实例学生”类具有属性 姓名” 性别”和年龄”其中 大学生”类属性在继承 学生”类属性的基础上,还有 系别”和 专业”两个属性。中学生”类的属性在继承 学生”类属性的基础上,还有 班级”和 特长”两个属性。 四种模型比较见下表:表4-2四种模型比较层次模型网状模型关系模型面向对象模型数据结构复杂的树结构复杂的有向图结构简单的二维表结构复

31、杂的嵌套递归数据联系通过指针通过指针通过表间的公共属性通过对象标识查询语言过程性语言过程性语言非过程性语言面向对象语言典型产品IMSids/ n IMAGE/3000 IDMS TOTALOracleSybaseDB2SQL ServerONTOS DB盛行期20世纪70年代70年代至80年代中期80年代至今90年代至今第三节关系数据库概述一、关系型数据库特点(一)关系模型重要组成部分1. 数据结构关系数据库是支持关系模型的数据库系统。它的数据结构非常简单,不论是实体还是实体间的联系,在关系型数据库中一律用二维表, 即关系来表达。关系模型基本的数据结构是 关系。2. 数据操纵在关系型数据库中,

32、数据的操作是以集合为单位进行的,关系模型提供一组完备的高级关系运算,以支持对数据库的各种操作。关系运算分成关系代数、关系演算和关系逻辑等三 类。3. 数据完整性规则数据库中数据必须满足实体完整性,参照完整性和用户定义的完整性等三类完整性规 则。(二)关系模型特点与其它数据模型相比,关系模型突出的优点如下:1 关系模型提供单一的数据结构形式,具有高度的简明性和精确性。各类用户都能很 容易地掌握和运用基于关系模型的数据库系统,使得数据库应用开发的生产率显著提高。2关系模型的逻辑结构和相应的操作完全独立于数据存储方式,具有高度的数据独立 性。用户完全不必关心物理存储细节。3关系模型使数据库的研究建立

33、在比较坚实的数学基础上。关系运算的完备性和设计 规范化理论为数据库技术的成熟奠定了基础。4关系数据库语言与一阶谓词逻辑的固有内在联系,为以关系数据库为基础的推理系 统和知识库系统的研究提供了方便,并成为新一代数据库技术不可缺少的基础。二、关系模型的术语对现实世界的内容我们主要用实体和其属性来描述:4 资料来源:实体(Entity ):客观存在,可以相互区别的事物。任何事或物都可以定义为一个实体。属性(Attribute):实体有很多特性,每一个特性称为属性。对于实体的描述是通过定 义其属性值来实现的。例如描述一个学生可以用学号,姓名,专业,年龄等属性。实体集:性质相似的同类实体的集合,称为实体

34、集。这类实体通常使用相同的属性来描述,所有学生的识别都可以用上例中的四个属性来说明。将实体、属性以和属性上的取值用关系模型进行定义,就得到如图4-12所示的二维表DS11/13/70iOB/03/70隹阳sM 女訂:雇员L 三y,i,亦曜通”1雇员I |0&/01/937!0S/01/93C3结构。属性名001曜如号L|姓名|性别|生日|姬否|屣佣日期002003004090B76_F / / jbi/04/53:关键字字段*属性、列图4-12数据库二维结构从结构上看,二维表主要包含型和值两部分,其中型定义了用来描述实体的基本属性, 对于雇员这个实体,可以用雇员编号,姓名,性别,生日,婚否,雇

35、用日期,职务等七个属 性来描述。二维表的值则是每一个雇员在七个属性上的具体定义。例如清风这个雇员的信息就可以用(003,青风,女,11/13/70, F, 06/01/93,雇员)来说明。字段(Field):标记实体属性的命名单位称为字段,或数据项。在此例中定义了七个字 段,记录(Record):字段的有序集合称为记录。关系(Relation): 一个属性数目相同的元组的集合。这个定义把关系看成一个集合,集合中的元素是元组,每个元组的属性数目应该相同。关系中每一个属性都有一个取值范围,称为属性的值域。每一个属性对应一个值域,不同的属性可对应于同一值域。在二维表中常用关键码进行未知数据的查找。关

36、键码由一个或多个属性组成。在实际使用中,有下列几种键。候选键(can didate Key):在关系中,如果一个属性集的值能惟一标识一个元组而又不 含有多余的属性值,则称该属性集为侯选键。主键(Primary Key):有时一个关系有多个侯选键,选择一个作为插入、删除或检索元 组时的操作变量,被选用的侯选键称为主键。一般如不加说明,键是指主键。组合键(Composite key):当某一侯选键包含一个以上的属性时,则称该侯选键为组合键。外部键(foreign Key ):如果关系的某一些属性不是的候选键,而是另一关系的候选键, 则称为的此关系的外部键。例如在图4-10中,学号为学生登记表的候选

37、键,但不是关系一一学习登记表的候选键,则此时学号为学习登记表的外部键。候选键和外部键提供了一种表示两个关系之间联系的方法,即只有公共属性上具有相同属性值的元组之间才有联系。尽管关系与二维表格、传统的数据文件有类似之处,但它们又有区别。严格地讲,关系是一种规范化了的二维表格。在关系模型中,对关系作了下列规范性限制:(1) 关系中每一个属性值都是不可分解的;(2) 关系中不允许出现重复元组(即不允许出现相同的元组);(3) 由于关系是一个集合,因此不考虑元组间的顺序,即没有行序;(4) 元组中的属性在理论上也是无序的,但使用时按习惯考虑列的顺序。三、关系模型的完整性约束为了维护数据库中数据与现实的

38、一致性,关系数据库的数据与更新操作必须遵循下列三类完整性规则。1 .实体完整性规则(entity integrity rule )实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值,即主属性非 空。主属性用于惟一标识实体集中每一个实体的概念,若主属性取空值,说明存在着某个不可标识的实体,这与关系型数据库以主码作为关系模型的惟一型标识相矛盾。这条规则要求关系中元组在组成主键的属性上不能有空值。如果出现空值,那么主键值就起不了惟一标识元组的作用。2. 参照完整性规则(referenee integrity rule )参照完整性规则:如果属性F是基本关系R的外码,它与基本关系 S的主

39、码Ks相对应, 则对于R中每个元组在F上的值必须为:空值或者等于S中某个元组的主码值。在上述形式定义中,关系模式R是参照表,关系模式 S是被的关系称为参照关系。这条规则的实质是不允许引用不存在的实体。例如在图4-10中,在学生登记表、课程登记表、选课登记表的参照关系中,选课登记表是参照表,其中的学号和课程号只能取相应被参照关系中已经存在的主关键字值。3. 用户定义的完整性规则在建立关系模式时, 对属性定义了数据类型,即使这样可能还满足不了用户的需求。此时,用户可以针对具体的数据约束,设置完整性规则,由系统来检验实施,以使用统一的方法处理它们,不再由应用程序承担这项工作。例如在学生登记表中,可以

40、对性别字段的取值范围进行限定,只能在“男”或“女”中选择,以保证取值有意义。也可以对表约束进行定 义,如学生毕业后,将从学生登记表中删除这部分学生信息,同时存在于选课登记表中的相关记录也应随之删除,以符合参照完整性规则,通常用触发器完成表相关操作。四、结构化查询语言结构查询语言(Structured Query Language , SQL)是一个功能强大的数据库语言。SQL是关系数据库管理系统的标准语言。SQL语言集数据查询(Data Query)、数据操纵(DataManipulation )、数据定义(Data Definition )和数据控制(Data Control)于一体,可以独

41、立为数据库系统的应用开发提供了良好的环境。语比如在数据库中更新数据,或者从数据库中检索数完成关系型数据库生命周期中的全部活动, 句通常用于完成一些数据库的操作任务, 据。SQL功能可以分成以下几组:1. DML (Data Manipulation Language,数据操作语言)数据操作语句用于插入或者修改数据。UPDATE用于从数据库中修改现存的数据;INSERT用于向数据库中插入新的数据;DELETE用于从数据库中删除数据。2. DDL (Data Definition Language,数据定义语言)数据定义语句用于定义数据的结构,比如创建、修改或者删除数据库。CREATE TABLE

42、 仓U建表;DROP TABLE 删除表;ALERT TABLE 修改表;CREATE INDEX创建索引;DROP INDEX删除索引。3. DCL ( Data Control Language,数据控制语言)数据控制语句用于定义数据库用户的权限。GRANT授予操作权限;REVOKE收回操作权限。4. DQL (Data Query Language,数据查询语言)SELECT用于检索数据;数据查询语句非常简单,使用动词SELECT搭配不同参数来实现具体要求。数据查询语句的功能很强,不仅能够从数据库的众多数据中找到符合特定条件的数据,还可以对查询结果执行统计运算并给出汇总信息。SQ晤言是数

43、据库与应用的重要接口,是操作数据库的重要工具,它的研究与标准化对 数据库软件产品技术的发展和数据库的应用具有很大的推动作用。新的SQL3标准将能够处理对象数据库中复杂对象。这意味着SQL3将包含综合、细化的等级、多重继承性、用户定义数据类型、触发器、支持知识系统、周期查询表示等。此外,它还支持面向对象编程、抽象数据类型和方法、继承性、多态性、封装性等。数据库语言 SQL的完善和标准化,标志着数据库技术的进步和成熟。五、典型的关系数据库简介随着数据库技术成为计算机信息处理系统的基础,社会对数据库技术的需要越来越迫 切,各种DBMS商品软件竞相上市,如何根据需要和可能找到一个适合的数据库软件作为开

44、 发工具,是一个不可忽视的问题。DBMS选择是否适当,将直接影响今后整个开发工作。Access、Oracle、Visual Foxpro 、DB2 Sybase、Informix 、SQL Server 等,都是目 前流行的DBMS这些DBMS各具特色,适用面很广,而且都在不断推出新版本以满足广大用 户的需求。根据应用范围主要可以分为桌面数据库和服务器段数据库两类:(一)桌面数据库产品 Access和Visual FoxproAccess是微软公司推出的桌面数据库系统。基本操作基于VBA( Visual Basic forApptications ),使它除了数据库功能外,还具有强大的开发功能

45、。Access与Office应用程序的高度集成,是开发小型管理信息系统的首选数据库系统之一。另外,Access有全中文的界面、提示和帮助,是一个新手学习数据库的上选。Access作为桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据 库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。Microsoft Access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器 iis假死,或者消耗掉服务器的内存导致服务器崩溃。Visual Foxpro 可以作为单机或者小型网络应用的数据库。VFP除了拥有数据库功能以外,也是一个专业数据库应用开发工具,可以用来开发任何

46、一种类型、规模的数据库应用。MySQL适用于小型应用。大多在Linux下作为Web数据库服务器。和 Access、VFP等桌面数据库不同的是,MySQL提供类似SQL Server的连接方式,提供账号管理,而且在非商业应用上是免费的。(二)服务器端数据库产品1、Microsoft SQL Server微软的SQL Server是一个为分布式 C/S计算环境而设计的关系型数据库管理系统,具 备高性能、可靠性。是一个综合的分布式管理框架结构,允许集中地管理数据库服务器;通过基于Windows的安全性和伸缩性等方面的优势,能够满足企业今后业务发展的需要。SQLserver可以适合大容量数据的应用,提

47、供了高性能Web页信息访问机制,在功能上管理上也要比Microsoft Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。SQL Server for NT 支持数据的分布存储。提供了相同服务器的不同数据库和不同服务 器间的数据库复制,为整个组织机构内分发准确的信息提供一个强大且可靠的工作方式。对OLAP的完美支持,使得 SQLServer成为数据仓库和增强性应用较好的平台。中小型企业应 用一般使用 MS SQL Server作为数据库服务器,最近几年MS SQL Server也在大力向大型应用渗透。2、OracleOracle是当今数据库大公司之一。Oracl

48、e公司的数据库产品,早在1986年就进入中国市场,我国许多行业和部门的管理信息系统的数据库都选用Oracle开发。Oracle是世界上第一个商品化的关系型数据库管理系统,也是第一个推出与数据库结合的第四代语言开发工具的数据库产品,它采用标准的SQL结构化查询语言,支持多种数据类型,提供面向对象存 储的数据支持。特别是并行处理能力强,即可以充分利用服务器硬件的性能,同时处理较多的用户请求。另外,它还提供较好的数据库安全性控制,具有多种级别的用户权限控制和数据库备份恢复等功能。大型企业的应用一般使用Oracle作为数据库服务器。目前, Oracle正变得越来越易用,并向中小企业的应用渗透。3、DB

49、2DB2是IBM公司的产品。DB2在金融、工业、铁路、航空、制造业、医院、旅游等领域 应用广泛,尤其在金融系统最受青睐。DB2早期的发展重点是针对大型主机平台的。20世纪90年代初,已发展到中型机、小型机和微机平台上。现在DB2已经能运用于各种硬件平台和软件平台。各种平台上的DB2有共同的应用程序接口, 运行在一种平台上的程序可以方便 地移植到其它平台。最近 IBM购并了 Informix ,客户群更加庞大了。在银行、民航等大型 企业中可以经常看到 DB2的影子。DB2书籍不多见,学习难度相对较高。这三类数据系统的特点比较见表4-3 :表4-3三类数据系统的特点比较SQL ServerOrac

50、leDB2开放性只能在Windows上运行能在所有主流平台上运行(包括Windows)能在所有主流平台上运行(包括Windows)安全性没有获得任何安全证书获得最高认证级别的ISO 标准认证获得最高认证级别的ISO 标准认证性能多用户时性能不佳性能最高,保持WindowsNT下的 TPC-D和适用于数据仓库和在线 事物处理,性能较高。TPC-C的世界记录。客户端支持C/S结构,只支持Windows 客户多层次网络计算,支持多种工业标准跨平台,多层结构,操作性操作简单,但只有图形界 面。较复杂,同时提供GUI 和命令行,在 Windows NT 和Unix下操作相同。较复杂, 同时提供 GUI

51、和命令行,在 Windows NT 和Unix下操作相同。风险性完全重写的代码,经历了 长期的测试,不断延迟, 许多功能需要时间来证 明。并不十分兼容早期产 品。使用需要冒一定风 险。长时间的开发经验,完全 向下兼容。得到广泛的应 用。在巨型企业得到广泛的 应用,向下兼容性好。风 险小。4、SybaseSybase也是市场上较受欢迎的数据库产品之一,由较早采用客户/服务器技术的Sybase公司推出。Sybase同样具有支持多操作平台、支持标准关系数据库语言 SQL的能力。Sybase采用客户/服务器模式和开放的体系结构,能够实现网络环境下各节点上的数据库的互访操 作。此外,Sybase还与十分

52、著名的数据库应用开发工具PowerBuilder相结合,能够快速开发基于客户/服务器的图形化数据库应用程序。Sybase在功能和SQL语法上有些类似于 MSSQL Server。Sybase和微软研发数据库服务器的合作破裂以后就产生了MS SQL Server和Sybase SQL server。目前电信的一些业务正在使用Sybase。5、InformixIn formix 是最先推出对象关系型数据库系统的厂商。ln ormix公司的产品在性能上非常优秀:很高的处理速度,数据吞吐量巨大,支持极大数量的用户,并具有极好的稳定性。 广泛支持并行的SQL功能,使得所有的数据操作都能并行处理,从而消除

53、了潜在的瓶颈。不仅能够以关系数据库能够存取的结构存放复杂数据,还能对复杂数据直接索引、比较和操作,以灵活易于实现的方式既保持了关系数据库的高性能又提供了丰富多彩的对象特征。对于DBMS勺选择。数据库技术并不是要考虑的唯一因素,硬件环境、厂商信誉、技术支持、产品价格、产品用户群等都是应慎重考虑的问题。只有适应具体的应用情况,满足自己的需要才是最合适的。第四节数据库发展20世纪80年代以来,数据库研究领域得到了极大的拓展,形成不同的的数据库系列, 如图4-13所示。数据库技术将向着实时性更强、可扩展性更强、更加智能化的方向发展。 以下对一些当前正在流行的、重要的技术做简单介绍。时彖堆屮矢糸轟存处艸

54、苛扒殓嗦疔用犧仔析决最慢统数据聲层次確屮分布式M荽弭偉數按库也掘库数掘库 数期匱昭络技忒 笄IT技乐 付命技术图4-13数据库系列熊曾刚,张学敏,陈建新关于数据库技术研究及发展现状的探讨17-19一、数据模型发展面向对象数据库关系数据库技术出现在 20世纪70年代,经过80年代的发展到90年代已经比较成熟,在90 年代初期曾一度受到面向对象数据库的巨大挑战,但是市场最后还是选择了关系数据库。2000年RDBM的市场份额占整个数据库市场的80%这个比例比1999年增长了 15%这组数据充分说明RDBM仍然是当今最为流行的数据库软件。当前在数据库技术发展中最有前途和生命力发展方向之一的就是面向对象

55、数据库(Object Oriented Data Base,简称OODB,它是面向对象技术与数据库技术的有机结合。OODB既具备传统数据库的必备功能,也具有面向对象方法的基本特征。例如:采用面 向对象的数据模型,把对象作为存储与检索单位,支持继承与封装,提供面向对象的数据定义语言和数据操纵语言等等。目前OOD啲研究与开发有3种途径:(1)开发全新的、自成体系的面向对象的数据库 管理系统,即OODBMS( 2)在传统的数据库管理系统中增加面向对象的功能,建立对象关 系数据库管理系统(ORDBMS是对象技术和传统关系数据库技术的最佳融合,在这一研究和发展领域的杰出代表即是 Oracle9i ;(

56、3)在面向对象的编程语言中增加数据库的功能。OODB同传统的关系数据库系统相比具有处理多媒体数据、复杂对象的能力,因而更适 用于涉和多媒体数据、时态数据、空间数据、复杂对象的数据库等新的应用领域。但由于关系数据库在传统数据库应用领域仍占据主导地位,因而将二者结合,发展一种分布式对象关系数据库是未来的趋势。二、数据库技术发展(一)分布式数据库分布式数据库 DDB( Distributed Data Base )是一组数据集,逻辑上它们属于同一系 统,而物理上分散在用计算机网络连接的多个场地上,并统一由一个分布式数据库管理系统管理。分布式数据库系统可以看成是数据库技术和计算机网络结合的产物。70年

57、代中期美国计算机公司(CCA设计并实现了第一个分布式数据库原型系统SDD-1,我国目前也建立和J.工矿自动化,2004 ( 1)实现了一些各具特色的分布式数据库原型。随着面向对象技术研究的深入,人工智能、专家系统的进一步成熟,迫切需要数据库管理系统具有新的数据管理功能,因此产生了两个新的研究领域:分布式知识库系统和分布式面向对象数据库系统。分布式数据库系统具有潜在的 大市场,如银行系统、电力管理系统、各种集团公司的管理等。分布式数据库是在数据库系统应用过程中逐步发展起来的,仍存在许多不足之处。比如将各种孤立的数据库转向分布式处理时,面临的异构数据库的集成问题。此外,分布式数据库系统虽然有利于改

58、善性能,但如果数据库设计不周密,数据分布不合理,造成远距离访问过多,特别是分布连接操作过多时都会降低系统性能。(二)并行数据库并行数据库(Parallel Data Base)是将一个数据库任务分割成多个子任务,交由多台处 理机协同完成,从而极大地提高系统的事务处理能力。数据库的并行处理是提高数据库系统对事物快速响应能力的有效手段。并行数据库技术包括对数据库的分区管理和并行查询,它并行数据库技术采用的重要技术是多线程技术和虚拟服务器技术。一个理想的并行数据库系统应能充分利用硬件平台的并行性, 提供不同事物间的并行性、 同一事物内不同查询间 的并行性、同一查询内不同操作间的并行性和同一操作内的并

59、行性。(三)多媒体数据库多媒体数据库MD( MultimediaDataBase )是以数字化和数据压缩为基础的计算机多媒 体技术与数据库技术的结合,是研究并实现对多媒体数据的综合管理,即对多媒体对象的建模,对各种媒体数据的获取、存储、管理和查洵。它是当前最有吸引力的一种技术,主要应 用于图书馆、博物馆、展览馆、电子商务、艺术创作以和虚拟现实演示等,可以极大地提高 现有的服务水平,产生直接的经济效益和社会效益。近年来,大容量光盘、高速 CPU高速宽带网络等硬件技术的发展为多媒体数据库的应 用奠定了基础。多媒体数据库的实现方式主要有三种:(1)基于关系模型,加以扩充使之支持多媒体数据类型;(2)

60、基于面向对象模型来实现对多媒体信息的描述和操纵;(3)基于超文本模型陈敏数据库技术的现状及发展趋势J 现代图书情报技术,1999 ( 5): 10-13。数据可视化是指在计算机屏幕上以图形或图象的方式形象地向用户显示各 种数据,使用户快速理解和吸收数据所表示的信息,以提高人类大脑二次处理信息的速度和能力。可以把数据可视化方法视为一个从数据库的多维数据空间到计算机屏幕二维空间的映 射。数据可视化是一个新的研究领域,也是未来数据库重要的研究领域之一,目前已经提出了很多数据可视化的技术。(四)WEB数据库数据库技术,为计算机收集、存储、加工和利用数据提供了全面的支持,已成为当今计算机管理信息系统的核心技术,其应用无处不在。但是,随着In ternet的发展和普和,加之关系数据库自身的局限性,传统数据库技术越来越不能适应市

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!