版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1课 数据库系统基本概念,1 数据管理 2 数据模型 3 数据库系统结构 4 数据库应用技术,1 数据管理,数据库的产生和发展 数据库(Database)起源于20世纪50年代,当时是美国为了战争的需要,把各种情报集中到一起,存储在计算机里,称为Information Base或Database。 1963年 IDS系统投入运行,揭开了数据库技术的序幕。,1 数据管理,20世纪70年代是数据库蓬勃发展时代,网状系统和层次系统占据了整个数据库的商用市场。 20世纪80年代,关系数据库逐渐取代网状系统和层次系统占据了市场。 20世纪90年代,关系数据库成为数据库技术的主流。,1 数据管理,信息与
2、数据 “信息”可以告诉我们有用的事实和知识; “数据”可以更有效地表示、存储和抽取信息。 信息(Information)、信息特征及作用信息就是新的、有用的事实和知识。,1 数据管理,信息具有四个基本特征 信息的内容是关于客观事物或思想方面的知识; 信息是有用的,它是人们活动的必需知识; 信息能够在空间和时间上被传递,在空间上传递信息称为信息通信,在时间上传递信息称为信息存储; 信息需要一定的形式表示,信息与其表现符号不可分离。,1 数据管理,信息的作用 它可以提高人们对事物的认识,减少人们活动的盲目性; 信息是社会机体进行活动的纽带,社会的各个组织通过信息网相互了解并协同工作,使整个社会协调
3、发展; 信息又是管理活动的核心。,数据(Data) 描述事物的符号记录。 数据有多种表现形式,它们都可以经过数字化后存入计算机。对数据的解释称为数据的语义。,1 数据管理,例如对于学生的描述:姓名、性别、年龄、出生年月、籍贯、所在系、入学时间,可描述为 (黎明,男,21,1972,江苏,计算机系,1990) (苏红,女,20,1973,辽宁,计算机系,1990)。,1 数据管理,1 数据管理,数据的特征 数据有“型”和“值”之分; 数据受数据类型和取值范围的约束; 数据有定性表示和定量表示之分; 数据应具有载体和多种表现形式。,1 数据管理,数据处理(Data Processing) 数据处理
4、是指对数据的收集、组织、整理、加工、存储和传播等工作. 数据管理:收集信息、将信息用数据表示并按类别组织保存,在需要的时候能够提供数据;,1 数据管理,数据加工:对数据进行变换、抽取和运算,通过数据加工会得到更有用的数据,以指导或控制人的行为或事物的变化趋势;,1 数据管理,数据传播:在空间或时间上以各种形式传播信息,而不改变数据的结构、性质和内容,使更多的人得到信息。 数据管理是数据处理的核心和基础。,数据处理的目的 数据处理的目的有两个: 一是借助计算机保存和管理大量复杂的数据,以便充分地利用这些信息资源; 二是从大量的原始数据中抽取、推导出对人们有价值的信息。,1 数据管理,1 数据管理
5、,计算机数据管理技术 计算机数据管理方法是不断发展的,至今大致经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。 人工管理阶段 20世纪50年代中期以前,计算机本身的水平较低。,在硬件方面,计算机的运算速度低、内存容量小,外存还没有磁盘等直接存取的存储设备; 在软件方面,还没有操作系统,没有管理数据的软件; 在应用方面,这一阶段的计算机主要用于科学计算。,1 数据管理,人工数据管理的特点 (1)数据不保存。需要时把数据输入,用完就撤走。数据不保存在计算机中。 (2)没有管理数据的软件系统。应用程序中不仅要管理数据的逻辑结构,还要设计其物理结构、存取方法、输入输出方法等。当存储当存储改
6、变时,应用程序中存取数据的子程序就需随之改变。,1 数据管理,(3)基本上没有文件概念。数据的组织方式必须由程序员自行设计。 (4)数据是面向应用的。一组数据只对应于一个应用程序。即使两个应用程序都涉及到了某些相同数据,也必须各自定义,无法相互利用。不仅在程序之间有大量重复数据,还易产生数据的不一致性。,1 数据管理,在人工管理阶段,数据与程序关系的特点如图所示。,1 数据管理, 文件系统阶段 从20世纪50年代后期到60年代中期,计算机的硬件、软件都有了很大发展: 在硬件方面,有了磁盘、磁鼓等直接存取的存储设备; 在软件方面,有了操作系统,其中有专门管理数据的文件系统。,1 数据管理,从处理
7、方方式讲,不仅有了文件批处理,而且能够联机实时处理; 在应用方面,计算机不仅用于科学计算,还大量用于管理。,1 数据管理,文件系统管理特点 (1)数据存放在文件中,文件可长期保存在外存。可经常方便地对文件进行检索和更新操作。 (2)程序和数据有了一定的独立性。由于有了管理数据的软件文件系统,文件的逻辑结构与存储结构由系统进行转换。,1 数据管理,(3)文件多样化。由于有了直接存取存储设备,也就有了索引文件、链接文件、直接存取文件等。 (4)数据的存取基本上以记录为单位。按文件名访问,按记录进行存取。 在文件系统阶段,数据与程序的关系如图所示。,1 数据管理,1 数据管理,文件系统的缺点 (1)
8、数据冗余度大。由于数据的基本存取单位是记录,因此,程序员之间很难明白他人数据文件的逻辑结构。这样,一个数据文件只能对应于同一程序员的一个或几个程序,不能共享,数据仍然是面向应用的。,1 数据管理,数据冗余度大,不仅浪费存储空间,而且数据的修改和维护也较困难,容易造成数据的不一致性。 (2)数据和程序缺乏独立性。文件是为特定程序服务的,改变数据的逻辑结构就必须修改程序。应用程序若有改变,就可能影响文件的数据结构,因此,数据和程序之间缺乏独立性。,1 数据管理, 数据库系统阶段 20世纪60年代后期,计算机硬件、软件有了进一步的发展。 在硬件方面,计算机的运算速度越来越快、内存容量越来越大,并有了
9、大容量磁盘; 在软件方面,操作系统和高级语言越来越完善和丰富,功能越来越强大;,1 数据管理,在应用方面,从处理方式讲,不仅需要能够联机实时处理,而且需要考虑分布式处理。随着管理数据规模的增大,文件系统的缺点越来越令人难以忍受。人们迫切盼望能有数据冗余度小,可共享数据的系统。在这种背景下,数据库技术应运而生,出现了专门的管理数据的软件DBMS。,1 数据管理,文件系统中,数据为什么难以共享呢?基本原因在于:数据的含义不明显。在文件系统中,采用“按文件名访问,按记录存取”的数据管理技术。 一般用户虽然都可以访问文件、访问数据,但却不知这些数据的含义,当然就不能共享数据了。以如下一条记录为例: 1
10、005张三7006151800设计所,1 数据管理,一般用户怎能理解其含义呢!甚至连数据的创建者,在经过一段时间后,重新看到此记录时,也会感到不可理解了。但如果数据的显示形式为 职工号 姓名 出生日期 工资 部门 1005 张三 700615 1800 设计所 则数据的含义就比较清楚了,共享自然就容易了。,1 数据管理,定义数据时,能把数据的含义也定义进去;存储数据时,能一起存储数据的含义; 显示数据时,能同时显示数据的含义,就成了改进文件系统的关键。从而出现了数据管理的新方式数据库系统。 在数据库系统中,数据以一种全新的方式数据库存储;管理数据库的生成、修改、使用的是一种新的管理数据的软件数
11、据库管理系统。,1 数据管理,数据库系统的主要特点 (1)整体数据结构化 有了DBMS后,数据库中的任何数据都不属于任何应用。数据是公共的,结构是全面的。它是在对整个组织的各种应用(包括将来可能的应用)进行通盘考虑后建立起来的总的数据结构。,1 数据管理,在数据库中,数据文件的个数是有限的、固定的,但数据库系统的应用却是无限制的。 整体数据的结构化是数据库的主要特征之一。由于整体数据的结构化,可减少乃至消除不必要的数据冗余,节约整体数据的存储空间,避免数据的不一致性和不相容性。,1 数据管理,(2)数据的共享性高 在DBMS的管理下,数据与数据的定义同时存储在数据库中;显示数据时,可同时显示数
12、据的定义;整个组织的整体数据被通盘考虑,整体数据结构化,因而,数据库中的数据共享性较高。合法用户都可很方便地使用数据库中的数据,且不用担心出现数据的不一致性和不相容性。,1 数据管理,(3)数据独立性高 数据的独立性是指数据与应用程序之间的关联性。 数据的物理独立性:当数据库中数据的实际存储方式改变时,DBMS可以适当改变改变转换数据的方式,而使用户面对数据的逻辑结构保持不变,从而处理数据的应用程序也可保持不变,这称为数据的物理独立性。,1 数据管理,数据的逻辑独立性:当数据库中数据的逻辑结构发生变化时,DBMS也可适当改变数据的转换方式,而使用户面对数据的逻辑结构保持不变,使得处理数据的应用
13、程序仍可保持不变,这称为数据的逻辑独立性。,1 数据管理,(4)高度的数据控制能力 由于有专门的数据管理软件DBMS管理数据,就可由DBMS来提供各种数据控制功能。,1 数据管理,DBMS提供各种数据控制功能: 较高的数据安全性 在DBMS管理下,只有合法用户才能访问数据库,才能访问他有权访问的数据,才能对数据进行他有权进行的操作,且操作必须合法。,1 数据管理,较好的数据完整性 由DBMS而不是由用户程序自动检查数据的一致性、相容性,保证数据应符合完整性约束条件。 较强的并发控制能力 DBMS提供并发控制手段,使多个用户程序同时对数据库数据操作时,可以得到有效控制。即保证共享、并发操作,且不
14、致破坏数据的完整性。,1 数据管理,较强的数据恢复能力 计算机系统出现各种故障是很正常的,数据库中的数据被破坏、被丢失也是可能的。DBMS必须具有某些数据库的恢复功能使数据库从错误状态恢复到正确状态的功能。 数据库系统中,程序与数据的关系如图所示。,1 数据管理,1 数据管理, 数据库 (DB:DataBase) 长期存放在计算机内的有组织的可共享的数据集合。 数据库管理系统 (DBMS:Data Base Management System) DBMS是在操作系统支持下工作的数据管理软件。对内负责管理数据库;对外向用户提供一整套命令,利用这些命令,合法用户可以建立和使用数据库。,1 数据管理
15、,DBMS的基本功能 (1)数据定义功能 DBMS提供数据定义语言(DDL:Data Definition Language)。用户利用DDL可方便地定义数据库中数据的逻辑结构(其中最基本的是数据与数据的含义同时定义)。,1 数据管理,(2)数据操纵功能 DBMS提供数据操纵语言(DML:Data Manipulation Language)。用户利用DML实现对数据库中数据的各种操纵,如插入、查询、修改或删除等。,1 数据管理,(3)完整性约束检查 所谓完整性约束,是指数据必须符合的一些规定。如学生的学号必须唯一, 所属部门必须存在以前等。DBMS应能支持一些常用的完整性约束检查功能。,1
16、数据管理,(4)访问控制 只有合法用户才可以访问数据库中的数据。 (5)并发控制 DBMS允许多个用户同时访问数据库,这就可能引起冲突,引起数据的不一致。因此,DBMS应有并发控制的功能,以避免并发操作时可能带来的数据不一致性。,1 数据管理,(6)恢复功能 数据库是有可能遭到破坏的。因此,DBMS应具有恢复数据库的功能。,1 数据管理,2 数据模型,数据描述 在数据处理过程中数据描述涉及到以下三个方面: 概念设计中的数据描述 逻辑设计中的数据描述 物理介质的数据描述,2 数据模型,三个世界 现实世界、信息世界和机器世界 现实世界 是由实际存在的事物组成的。计算机系统是不能直接处理现实世界的,
17、现实世界只有数据化后,才能由计算机系统来处理这些代表现实世界的数据。,信息世界 是现实世界在人脑中的反映。现实世界直接数据化是不可行的,人们必须首先调查、研究现实世界,归纳提炼出一个在研究范围内能反映现实世界的模拟世界信息世界,然后,才能对所得到的信息世界进行数据化。,2 数据模型,机器世界 是信息世界数据化后的产物。,现实世界,信息世界,机器世界,概念模型,数据模型,2 数据模型,2 数据模型,概念设计中的数据描述 根据用户的需求设计数据库的概念结构,一般有以下几个部分需要考虑: 实体:现实世界中客观存在的事物。 实体集:具有相同属性的实体的集合。 属性:实体的特征。 实体标识符:能够唯一的
18、确定一个实体的属性。,2 数据模型,逻辑设计中的数据描述 根据概念设计得到的概念结构来进行数据库的逻辑结构设计。 字段:每一个属性可以对应一个字段。 记录:字段的集合称为记录。每一个记录代表一个实体。 文件:同一类记录的集合组成一个文件。文件用于描述实体集。 关键码:能够唯一标识文件中每一条记录的字段或字段集。对应于实体标识符。,2 数据模型,物理介质中的数据描述 指的是数据在计算机中的存储形式,包括以下一些信息: 位(Bit):一位二进制数。 字节(Byte):8位二进制数。 字(Word):若干字节。 块(Block):内存和外存交换信息的单位。 桶(Bucket):外存逻辑单位,包含的块
19、数。 卷(Volume):输入输出设备装载的全部有用 信息。,2 数据模型,数据联系的描述 现实世界中的事物存在着联系,数据库中在存储信息时必须反映这种联系,也就是说由现实事物抽象出来的实体不是单独存在的,而是存在者必然的联系。 联系的定义:联系是实体之间的相互关系,与一个联系有关的实体集个数,称为联系的元数。,实体的联系 (Relationship) 现实世界中,事物之间有着错综复杂的联系。反映在概念模型中,则有了实体集内部的联系和实体集之间的联系。两个实体集之间的联系可归纳为以下三类:,2 数据模型,(1)一对一联系(11) 现有实体集A和B,若对于某个联系K来说,A中每个实体至多与B中一
20、个实体相联系,反之亦然。 (2)一对多联系(1n) 对于联系K来说,若A中的每一实体,B中可有多个实体与之联系;但对B中的每一实体,A中最多有一个实体与之联系。,2 数据模型,(3)多对多联系(mn) 对于联系K来说,若A中的每一实体,B中有多个实体与之联系,反之亦然。,2 数据模型,2 数据模型,2 数据模型,数据模型的定义 数据模型是能够表示实体和实体之间联系的模型。 数据模型包括两种:一种是独立于计算机系统的数据模型;另一种是直接面向数据库逻辑结构的数据模型。前者最著名的有实体联系模型;后者有层次模型、网状模型、关系模型、以及目前正在研究的面向对象的数据模型。,数据模型及其要素 模型是现
21、实世界特征的模拟和抽象。数据模型也是一种模型,是对现实世界数据特征的抽象。数据模型是数据库系统的核心和基础。,2 数据模型,数据模型通常由数据结构、数据操作和完整性约束三部分组成。 数据结构描述了系统的静态特性,这是数据模型最本质的内容。 数据操作描述了系统的动态特性。对数据库的操作主要有数据检索和更新两大类,这是任何数据模型都必须规定的操作。,2 数据模型,数据模型还必须提供定义完整性约束条件的手段,并在操作中自动检查。对于不符合的操作,自动拒绝执行,符合的操作才能真正地执行,从而保证数据的正确、相容和有效。 数据模型是数据库系统的核心和基础。 但现实世界总是先抽象成信息世界,然后才能转化为
22、数据世界。 信息世界是对现实世界的抽象。,2 数据模型,ER模型(实体联系模型) 先介绍几个基本概念。 实体 (Entity) 客观存在并可相互区别的事物称为实体。实体是客观事物的反映,既可以是实际存在的对象,也可以是某种概念。例如:一个工厂、一个车间、一种操作流程等。,2 数据模型,属性 (Attribute) 事物是有特性的。反映在实体上,就是实体的属性。一个实体具有有限个属性,也可以说是这些属性的总和组成了这个实体。 域 (Domain) 任一实体在任一属性上的取值都是有限制的。一个属性的取值范围就是这个属性的域。例如:姓名属性的域定为4个汉字长的字符串。,2 数据模型,实体集 (Ent
23、ity Set) 一组相关的实体的集合称为实体集。例如:全体职工就是一个实体集。为了区分实体集,每个实体集都有一个名称,即实体名。例如,职工实体,指的是名为职工的实体集。而1002、胡一民、男、38、1、工程师、“01”是该集中的一个实体。,2 数据模型,实体型 (Entity Type) 实体集的名及其所有属性名的集合,称为实体型。例如:职工(职工号,姓名,性别,年龄,婚否,职称,部门)就是职工实体集的实体型。实体型抽象地刻画了所有同集实体。在不引起混淆的情况下,实体型往往简称为实体。,2 数据模型,码 (Key) 唯一能够标识实体的属性集称为实体的码。在一个实体集中,没有两个完全相同的实体
24、存在,即不能够有两个实体,在各对应属性上的属性值都相同。码也称为关键字。,2 数据模型,实体联系模型的基本构成 实体联系(ER)数据模型所采用的三个主要概念是:实体集、联系集和属性。实体集是具有相同类型及相同性质(属性)的实体集合。联系集是指同类联系的集合。在ER模型中,用矩形框表示实体集,矩形框中写上实体名,用椭圆表示属性,椭圆中标上属性名,实体的主码用下划线表示。,2 数据模型,例如实体集职工可用ER模型表示,如图所示。,2 数据模型,实体集之间的联系集用菱形表示,并用无向边与相关实体集连接,菱形中写上联系名,无向边上写上联系集的类型。 部门和职工间的联系可用图所示。,2 数据模型,2 数
25、据模型,2 数据模型,多元联系 在ER模型中,可以表示两个以上实体集之间的联系,称为多元联系。 如联系签约就是一个三元联系。 对于特定的影星和电影来说,该影星为演该电影只能和一个制片公司签约; 但一个制片公司可以为一部电影和几个影星签约,一个影星可以和一个制片公司签约主演多部电影。,2 数据模型,2 数据模型,联系的属性 联系也可以具有单独的属性。 例如,如果希望建立某演员和制片公司为一部电影签约的有关酬金,此时,不能把酬金作为演员的属性,因为一个演员可能签约了多部电影,得到了不同的酬金;同理也不能把酬金作为制片公司和电影的属性; 所以应该把酬金作为联系的属性。,2 数据模型,2 数据模型,自
26、身联系 在一个联系中,一个实体集可以出现两次或多次,扮演多个不同角色,此种情况称为实体集的自身联系。一个实体集在联系中出现多少次我们就从联系到这个实体集画多少条线,到实体集的每条线代表该实体集所扮演的不同角色。,2 数据模型,2 数据模型,三种逻辑数据模型 实际的数据库管理系统所支持的主要数据模型有三种: 层次模型(Hierarchical Model); 网状模型(Network Model); 关系模型(Relational Model); 其中,前两类数据模型也称为非关系模型。,2 数据模型,层次模型 在现实世界中,有许多事物是按层次组织起来的,例如,一个学校有若干个系,一个系有若干个班
27、级和教研室,一个班级有若干个学生,一个教研室有若干教师。,2 数据模型,2 数据模型,层次模型有以下两个特点 有且仅有一个结点无父结点,这样的结点称为根结点; 非根结点都有且仅有一个父结点。,2 数据模型,网状模型 把层次模型的限制放开:一个结点可以有一个以上的父结点,就得到网状模型。 网状模型还可以有的两个特点是: 可能有一个以上的结点无父结点; 结点与其父结点之间的联系可以不止一个。,2 数据模型,2 数据模型,非关系模型的局限 在非关系模型中,子女结点是不能脱离其父结点而独立存在的,任何一个记录只有按其路径查看时才有实际意义。 用户必须提供父结点才能查询子结点。 因此数据库开发人员必须熟
28、悉所用模型的结构,在应用程序中才能明确指出查询的路径,才能实现查询。,2 数据模型,非关系模型的应用 层次模型曾在20世纪60年代末至70年代初流行过。其中最有代表性的当推IBM公司的IMS。但层次DBMS提供用户的数据模型和数据库语言比较低级,数据独立性也较差,所以在关系数据库之前,网状DBMS要比层次DBMS用得普遍。比较著名的有Cullinet软件公司的DMS等。,2 数据模型,关系模型 1970年,美国IBM公司的研究员E.F.Codd在他的著名论文“Arelational Modelof Datafor Large SharedData Banks”中首先提出了关系数据模型,标志着数
29、据库系统新时代的来临。以后,他又接连发表了多篇文章,奠定了关系数据库的理论基础。E.F.Codd于1981年荣获ACM图灵奖。,2 数据模型,1974年,IBM公司SanJose研究室研制成功关系数据库实验系统SystemR,以后又陆续推出了新的关系数据库软件产品SQL/DS和DB2等。1980年后,各种RDBMS的产品迅速出现,如Oracle、Ingress、Sysbase、Informix、dBASE、FoxBase、FoxPro等,关系数据库系统统治了数据库市场,数据库的应用领域迅速扩大。,2 数据模型,支持关系模型的DBMS称为关系型数据库管理系统(RDBMS:Relational D
30、ata Base Management System)。与其他的数据模型相同,关系模型也是由数据结构、数据操作和完整性约束三部分组成。 在关系模型中,数据的逻辑结构是一张张二维表。,2 数据模型,2 数据模型,概念模型对应的表,2 数据模型,关系模型的特点 与层次模型和网状模型相比,关系模型概念简单、清晰,并且具有严格的数据基础,形成了关系数据理论,操作也直观、容易,因此易学易用。无论是数据库的设计和建立,还是数据库的使用和维护,都比非关系模型时代简便得多。以后重点讨论关系模型和关系数据库。,2 数据模型, 数据库系统(DBS:DataBase System) DBS是指在计算机系统中引入数据
31、库后的系统构成,由计算机硬件、操作系统、DBMS、DB、应用程序和用户,以及数据库开发和管理人员等组成。,3 数据库系统结构, 数据库系统员 (DBA:Data Base Administrator) 参与一个数据库系统开发和应用的人员大致可分为用户、数据库开发人员和数据库管理员三类。其中,DBA是数据库设计成败的关键,是数据库系统能否正常运行的关键。DBA负责全面管理和控制数据库系统的运行和维护工作。,3 数据库系统结构,应用系统,应用开发工具,数据库管理系统,操作系统,数据库,用户,用户,用户,数据库管理员,3 数据库系统结构,数据库系统的三级模式结构,3 数据库系统结构,型(Type):
32、对某一类数据的结构和属 性的说明 值(Value):是型的一个具体赋值 例如:学生记录 记录型:(学号,姓名,性别,系别, 年龄,籍贯) 该记录型的一个记录值: (900201,李明,男,计算机, 22,江苏),3 数据库系统结构,模式(Schema) 数据库逻辑结构和特征的描述; 型的描述;反映的是数据的结构及其联系; 模式是相对稳定的。 模式的一个实例(Instance) 模式的一个具体值; 反映数据库某一时刻的状态; 同一个模式可以有很多实例; 实例随数据库中的数据的更新而变动。,3 数据库系统结构,模式(也称逻辑模式) 数据库中全体数据的逻辑结构和特征的描述 所有用户的公共数据视图 综
33、合了所有用户的需求 一个数据库只有一个模式 模式的定义 数据的逻辑结构(数据项的名字、类型、取值范围等) 数据之间的联系 数据有关的安全性、完整性要求,3 数据库系统结构,外模式(也称子模式或用户模式) 数据库用户(包括应用程序员和最终用户),使用的局部数据的逻辑结构和特征的描述。 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。,3 数据库系统结构,外模式的地位:介于模式与应用之间 模式与外模式的关系:一对多; 外模式通常是模式的子集; 一个数据库可以有多个外模式。 反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求。 对模式中同一数据,在外模式中的结构、类型、长度、保密级
34、别等都可以不同。,3 数据库系统结构,外模式与应用的关系:一对多 同一外模式也可以为某一用户的多个应用系统所使用; 但一个应用程序只能使用一个外模式。 外模式的用途 保证数据库安全性的有力措施; 每个用户只能看见和访问所对应的外模式中的数据。,3 数据库系统结构,内模式(也称存储模式) 是数据物理结构和存储方式的描述; 是数据在数据库内部的表示方式; 记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储); 索引的组织方式; 数据是否压缩存储; 数据是否加密; 数据存储记录结构的规定; 一个数据库只有一个内模式。,3 数据库系统结构,三级模式是对数据的三个抽象级别; 二层映象在DBM
35、S内部实现这三个抽象层次的联系和转换。 外模式模式映象 定义外模式与模式之间的对应关系; 每一个外模式都对应一个外模式模式映象; 映象定义通常包含在各自外模式的描述中。,3 数据库系统结构,保证数据的逻辑独立性 当模式改变时,数据库管理员修改有关的外模式模式映象,使外模式保持不变; 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。,3 数据库系统结构,模式内模式映象 模式内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。 例如,说明逻辑记录和字段在内部是如何表示的。 数据库中模式内模式映象是唯一的该映象定义通常包含在模式描述中
36、。,3 数据库系统结构,保证数据的物理独立性 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式内模式映象,使模式保持不变。 应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。,3 数据库系统结构,模式 是数据库的中心与关键; 独立于数据库的其它层次; 设计数据库模式结构时应首先确定数据库的逻辑模式。,3 数据库系统结构,内模式 依赖于全局逻辑结构,但独立于数据库的用户视图即外模式,也独立于具体的存储设备。 它将全局逻辑结构中所定义的数据结构及其联系按照一定的物理存储策略进行组织,以达到较好的时间与空间效率。,3 数据库系统结构,外模式 面向具体的应
37、用程序,定义在逻辑模式之上,但独立于存储模式和存储设备。 设计外模式时应充分考虑到应用的扩充性。当应用需求发生较大变化,相应外模式不能满足其视图要求时,该外模式就得做相应改动。,3 数据库系统结构,应用程序 在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构独立。 不同的应用程序有时可以共用同一个外模式。,3 数据库系统结构,二层映象 保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改。 数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。,3 数据库系统结构,4 数据库应用技术,数据
38、库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志,4 数据库应用技术,面向用户的数据库系统体系结构 三级模式结构是数据库系统最本质的系统结构,它是从数据结构的角度来看待问题的。用户是以数据库系统的服务方式来看待数据库系统的,这就是数据库系统的软件体系结构。用这种观点,当今的数据库系统大致可以分为三类:集中式系统、文件服务器系统和客户/服务器系统。,4 数据库应用技术,集中式系统 集中式系统是指一台主机带上
39、多个用户终端的数据库系统。在集中式系统中,DBMS、DB、应用程序都是集中存放在主机上的。用户通过终端可以并发地访问主机上的数据库,共享其中的数据。但所有的处理数据的工作都由主机完成。用户在一个终端上提出要求,主机根据用户的要求访问数据库,运行应用程序对数据进行处理,把处理结果回送该终端输出。,4 数据库应用技术,集中式处理的优点在于简单、可靠、安全。缺点是:主机的任务很重,终端数有限。当主机出现故障时,整个系统也不能使用。,4 数据库应用技术,文件服务器系统 在文件服务器系统中,有一台计算机作为文件服务器使用,在服务器中存放可共享的数据库。各个用户通过自己的PC机来访问服务器。但服务器的功能
40、仅仅为在数据库中检索出用户需要的文件,并把这些数据文件传送到用户的PC机上,服务器并不处理数据文件。在用户的PC机上,再由DBMS对数据进行处理。如果用户对数据库作了修改,还必须把整个数据库文件回传服务器进行保存。,4 数据库应用技术,在文件服务器系统中,文件服务器的工作比较单一,仅仅为接受要求,检索文件,发送文件,对文件的处理都由用户的PC机进行。但是,在网络上要传送整个文件,从而大大降低了整个系统的性能。,4 数据库应用技术,客户/服务器系统(Client/Server,简称C/S) 在客户/服务器系统中,数据库也是存放在服务器上的。但是,用户终端提出数据请求后,服务器不仅检索出文件,而且
41、对文件进行操作,然后,只向用户发送查询的结果而不是整个文件。用户的机器,称为客户机,再根据用户对数据的要求,对数据作进一步的加工。,4 数据库应用技术,客户/服务器系统中,网络上的数据传输量得到了显著的减少,从而提高了系统的性能。另一方面,客户机的硬件和软件平台也可多种多样,从而为应用带来了方便。客户/服务器结构的数据库系统是当前最为流行的数据库结构。 这种模式将应用任务分解成多个子任务,由多台计算机分工协同完成,也就是所谓“功能分布”原则。,基于Browser/Server的数据库(简称B/S) B/S模式由浏览器、Web服务器和数据库服务器三个部分组成。在B/S模式下,客户端将各种应用软件
42、取而代之为一个通用的浏览器(如Internet Explorer等),用户的所有的操作都是通过这个通用浏览器进行的。这种结构的核心部分是Web服务器。,4 数据库应用技术,4 数据库应用技术,常见的数据库管理系统 Oracle Microsoft SQL Server Sybase ASE IBM DB2 MySQL Microsoft Access Visual FoxPro,4 数据库应用技术,DBMS的工作过程,4 数据库应用技术,首先,内存被划分为很多区。其中,有一个面向整个数据库的区域称为系统缓冲区;每执行一个应用程序就开辟一个用户工作区。当一个应用程序要从数据库中读取数据时,它的整个过程是:,4 数据库应用技术,(1)用户在应用程序中发出命令,指明外模式名。 (2)DBMS根据该命令,调出所需外模式,并检查用户的权利。若通过检查,则继续执行;否则拒绝之。 (3)DBMS根据外模式/模式转换,确认所需数据在模式上的有关信息。,4 数据库应用技术,(4) DBMS根据模式/内模式转换,确认所需数据在内模式上的有关信息。 (5) DBMS向操作系统发出读相应数据的请求。 (6) 操作系统把有关数据从外存调入到系统缓冲区上。 (7) DBMS把数据按外模式的形式送入用户工作区。 (8) 记载系统工作日志。,数据库应用程序开发工具 公共网关接口CGI (Common Gate
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校食堂早晚餐采购制度
- 上海闵行职业技术学院《中国古代文学史》2025-2026学年期末试卷
- 唐山幼儿师范高等专科学校《中医耳鼻喉》2025-2026学年期末试卷
- 上海工艺美术职业学院《能源经济学》2025-2026学年期末试卷
- 上海交通职业技术学院《语言学概论》2025-2026学年期末试卷
- 山西老区职业技术学院《金融学概论》2025-2026学年期末试卷
- 山西晋中理工学院《国际营销概论》2025-2026学年期末试卷
- 朔州职业技术学院《新中国史》2025-2026学年期末试卷
- 上海财经大学《商法》2025-2026学年期末试卷
- 山西电子科技学院《高等学校教师职业道德修养》2025-2026学年期末试卷
- 全自动集尘器
- 手术室护士与麻醉的护理配合试题
- 蜡疗操作评分标准
- 《针灸治疗》课件-第十节 耳鸣耳聋
- 磨煤机检修作业三措两案(2020版)
- 防震减灾科普先行防震减灾知识宣传课件
- 建筑工程制图与识图全套课件建筑施工图
- 福建省南平一中2023年中考物理自主招生试题(实验班含解析)
- GB/T 4169.2-2006塑料注射模零件第2部分:直导套
- GB/T 27663-2011全站仪
- GB/T 12265-2021机械安全防止人体部位挤压的最小间距
评论
0/150
提交评论