计算机软件基础课件_第1页
计算机软件基础课件_第2页
计算机软件基础课件_第3页
计算机软件基础课件_第4页
计算机软件基础课件_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机软件基础Thesoftwarebasicofcomputer主讲:xx西安交通大学计算机教学实验中心第11单元数据库_1数据库概述1谢谢观赏2019-7-11第2页教学目标、要求了解什么是数据库了解什么是数据模型了解数据处理技术的发展变化及趋势谢谢观赏2019-7-11第3页涉及的章节第6章数据库系统基础6.1概述6.2数据模型6.3数据库系统的结构第8章实用关系数据库管理系统应基础8.1计算模式介绍谢谢观赏2019-7-11第4页一、基本概念数据处理(DataProcessing)

是计算机应用中的最大的一个分支。最初指在计算机上加工商业、企业的信息和数据,现在常用来泛指非科技工程方面的计算、管理和操纵任何形式的数据资料。谢谢观赏2019-7-11第5页数据库(DataBase)在计算机上合理存放的相互关联的数据的集合,被称为数据库;它具有下列特点:最小冗余(尽可能不重复)可以最优方式提供数据共享数据的独立性实现数据的统一管理数据库技术是数据处理最有效的手段谢谢观赏2019-7-11第6页数据库技术发展历史数据库(DB)技术是管理数据的一种最新方法。它起源于60年代末。30多年来,在理论上、实现技术上都有很大的发展。特别是在PC机上推出XBASE系统DBS后,使数据库技术走出实验室,从专业人员掌握的特殊工具变为普通用户手中的一般数据处理工具。现在,DB已成为MIS、OA、CAM等领域的主要工具之一。谢谢观赏2019-7-11第7页数据管理的发展阶段数据管理经历了4个发展阶段:手工管理阶段文件系统阶段数据库系统阶段分布式数据库系统阶段谢谢观赏2019-7-11第8页手工管理阶段(46~50年代中期)早期计算机数据处理应用没有专门管理数据的软件,程序自带数据。其特点是:数据独立性差,不能共享;数据冗余无法集中式管理主要用于科学计算应用程序1应用程序n…...数据组1数据组n…...谢谢观赏2019-7-11第9页文件系统阶段(50~60年代)数据以文件的形式存放于外存中,数据由文件系统FS和操作系统OS统一管理,数据通过程序方式来实现操作。其特点是:文件系统是应用程序和数据间的公共接口、统一存取;文件由用户自定义,格式和内容不统一,难于共享;数据冗余度大文件系统本身无法解决这些问题。应用程序1应用程序n…...数据组1数据组m…...文件系统谢谢观赏2019-7-11第10页数据库系统阶段(60年代~至今)由DBMS实现对DB的定义、管理和操作。DBMS是用户和数据间的接口,特别是网络和通信技术的发展,使异地、异机间的数据共享成为现实。其特点是:能为多用户共享数据冗余度最小可以交互方式或程序方式操作问题:异地共享一处的数据,容易造成网络通信“堵塞”应用程序1应用程序n…...DBMSDB谢谢观赏2019-7-11第11页数据通信

局域网LAN远程通信...DBMSDB实时方式MM接收器DBMSDB非实时方式谢谢观赏2019-7-11第12页分布式数据库系统阶段(80年代中期)分布式数据库DDBS(DistributedDBS)技术是DB技术和网络、通信技术的结晶产物。其主要特点:处理的数据分散在各个结点上,每个结点的数据由本地的DBMS管理,各结点间可以数据共享;充分利用、发挥各个结点的资源优势,减轻网络负担;DBMS1DBMSiDB1DBi

DDBMS…..谢谢观赏2019-7-11第13页数据库技术的发展方向数据库的发展方向:可视化多媒体面向对象的处理交叉平台开放式现代数据库还要具有:

数据仓库、数据开采、知识发现、决策支持的功能。谢谢观赏2019-7-11第14页几种常用的数据库XBASE一种大众化的关系型数据库系统;类似产品有:DBASE、FOXBASE、FOXPRO、VFP等系列产品。Oracel

大型关系数据库管理系统,具有兼容性、可移植性、可联接性、开放性、高生产率,支持SQL等优点。Sybase大型“客户机/服务器数据库体系结构”的DMS具有分布式处理等优点。Informix是唯一具有“可伸缩、高性能”体系结构的DBMS。SQLServer

是建立在WindowsNT上的RDBMS。谢谢观赏2019-7-11第15页对数据库研究的发展趋势由于计算机应用的普及,数据处理的社会需求剧增,极大地促进了DB技术的发展,至今为止,对DB的研究主要集中在以下几个方面:DB的设计方法DB规范理论分布式DBS4GL及应用生成器新一代DBS——面向对象的DB系统谢谢观赏2019-7-11第16页DB的设计方法目前的DB设计方法,主要停留在经验与尝试阶段,工程规范程度不高。主要方法有:数据模型设计:解决从现实世界到DB的逻辑描述数据存储与访问方法的设计:根据数据模型物理存储结构,确定用户访问数据的方式;DB的管理与保护:解决DB使用及维护中的各种问题,例如,对用户友好、使用简便、维护方便等。谢谢观赏2019-7-11第17页DB规范理论研究数据的语义问题(即数据元素间的关系)构造规范的数据模型,其目的是使存储数据能正确地反映现实世界的联系,防止导出与客观实际矛盾的结果。目前这方面的工作越来越形式化、抽象化,已成为一个独立的理论分支。谢谢观赏2019-7-11第18页4GL及应用生成器第四代语言(4GL)来源于DB查询语言,例如SQLServer。用户只需指出“做什么”,应用生成器自动生成相应的应用程序。这方面的研究可以使DB应用系统开发趋于自动化、标准化,从而提高系统的效率、可靠性和可维护性。谢谢观赏2019-7-11第19页新一代DBS—面向对象的DB系统最新DB技术是面向对象的数据库系统OODBS,目前还处于探索阶段。谢谢观赏2019-7-11第20页二、数据模型从现实生活中的客观事物到存放于计算机中的数据,这样一个加工过程可划分为三个领域:现实世界、观念世界和数据世界表示实体之间联系的方式被称为数据模型,而实体模型是从客观事物中抽象得到的。谢谢观赏2019-7-11第21页现实世界现实世界是存在于人脑之外的客观世界,事物及其相互联系就存在于这个世界中。事物可用“对象”和“性质”来描述又有“共同事物”和“特殊事物”两个不同级别。谢谢观赏2019-7-11第22页观念世界观念世界是现实世界在人脑中的反映,客观事物在概念世界中称为“实体”。反映事物联系的是实体模型。实体用“对象”和“属性”来描述又分为“个体实体”和“总体实体”两个级别。谢谢观赏2019-7-11第23页数据世界数据世界是数据在观念世界中信息的数据化,现实世界中的事物及联系在这个世界中用数据模型来描述。数据模型反映的是数据间的联系。数据用“数据记录”和“数据项”来描述;又分为“数据类型”和“数据值”两个不同级别。谢谢观赏2019-7-11第24页数据加工三个的领域关系

数据

数据分级记录项项值数据模型实体模型事物及联系实体分级实体对象属性总体个体事物

事物分级对象性质共同特殊抽象过程数据世界观念世界现实世界客观世界是信息之源,是设计DB的出发点。实体模型和数据模型是对客观事物的两级抽象描述。数据库的核心问题是数据模型。结论:要得到正确的数据模型,必须首先充分了解客观事物。由此可见:谢谢观赏2019-7-11第25页实体模型实体模型是用符号和文字描述的客观事物的联系。要考虑下述问题:对象与属性个体与总体总体之间的联系实体模型谢谢观赏2019-7-11第26页对象和属性对象和属性在概念世界中,用实体来描述客观事物,实体可以是具体的,也可以是抽象的:具体实体:一个学生、一辆汽车抽象实体:一部法规、一种算法实体又可以分成“对象”和“属性”两类:对象:人、汽车、工厂、西安交通大学等属性:用来描述对象的特征信息;例如,“人”的特征有:姓名、性别、民族、籍贯、出生日期等。在设计、调研过程中,要从不同角度、观点考虑、分析实体及其属性。谢谢观赏2019-7-11第27页个体和总体个体:指单个的相互区别的特定实体。人的个体:张三、李四;学校的个体:北大、清华、西安交大等;总体:泛指某一类个体的集合。“人”泛指张三、李四等个体组成的集合。个体和总体的联系是对象的外部联系。谢谢观赏2019-7-11第28页总体之间的联系总体的个体之间有着某种联系,联系方式又分为三种:一对一联系

实体A中任一个体至多对应实体B中的一个个体,反之亦然;则称A和B是一一对应的联系。例如,高考录取、电影院看电影等。一对多联系

实体A中至少有一个个体对应于实体B中一个以上的个体,反之亦然,则称这种联系是“一对多”的联系。例如,父亲对子女;院系对班级等。多对多联系

实体A中至少有一个个体对应于实体B中一个以上个体;反之,B中也至少有一个个体对应于A中一个以上的个体,则称A对B是多对多的联系。例如,学生对课程、工厂对产品等。谢谢观赏2019-7-11第29页实体模型反映实体间联系的模型成为实体模型。分析、研究了客观事物及其联系后,即可建立实体模型。以教学为例:教学由学生、课程、教师、学习、任课等实体组成。学生属性有:学号、姓名、性别、年龄、班级课程属性有:课程号、课程名称教师属性有:姓名、课程号、课时学习属性有:学号、课程号、分数任课属性有:教师名、课程号、教室谢谢观赏2019-7-11第30页教学实体模型示意图

课程学习任课教师学生姓名、课程号、课时教师名、课程号、教室学号、姓名、性别、班级课程号、课程名学号、课程名、教室谢谢观赏2019-7-11第31页数据模型建立了实体模型后,就可以建立数据模型了。在DBS中表示实体(数据记录)之间联系的方式称为数据模型。数据模型实际上是数据间的一个整体逻辑结构图。为了使模型能清晰、准确地反映客观事物,要进行数据模型的设计,也即数据库的设计。谢谢观赏2019-7-11第32页数据模型(DB)的设计命名数据模型(数据库名称)以示区别不同的模型,例如:成绩库.MDB命名记录类型(数据库结构)

定义数据库记录结构,例如:成绩库记录学号、课程号、分数命名每个记录中的数据项(字段)

XH(学号)、CNO(课程号)、SCORE(分数)说明各个记录类型之间的联系指出各数据项的数据特征数据类型、长度、值域等。例如,XH,字符型,长度为7谢谢观赏2019-7-11第33页商店的数据关系模型

关系(库名)SHOP

店名地址经办人电话解放路食品店解放路262号李国基2-5036桃园商场桃园路6号张山6-6161香香瓜果店北大街26号王宏3-6201白塔干鲜果店西大街56号宋良3-3637北大街果品店北大街231号林青3-1116关系框架或库结构元组或记录属性(字段)属性“电话”的值谢谢观赏2019-7-11第34页三种数据模型数据模型的好坏直接影响到DB的性能。当前较流行的设计方法有三种:关系、层次和网络方法;对应的模型为关系模型、层次模型、网络模型。谢谢观赏2019-7-11第35页层次模型

描述层次(树形)结构的模型。特点:每个模型中只有一个称为根的最高结点其它结点都只能和一个父结点相连接(1:M)查询、访问都必须从根结点开始最有影响的层次模型的DBS是60年代末,IBM公司推出的IMS层次模型数据库系统。谢谢观赏2019-7-11第36页层次模型示意图

校长校长办公室各学院……各职能处(电信学院)计算机系电子系信控系…..计算机教学实验中心网络所…..软件教研室谢谢观赏2019-7-11第37页网络模型图结构模型,其特点:可有0个或多个结点无双亲允许结点有多个双亲允许结点间有2种以上的关系存取、访问必须按事先定义好的路径进行(从指定出发点)最有影响的网络模型是美国数据系统语言协会推出的DBTG系统,也称CODASYL(ConferenceOnDataSystemLanguige)谢谢观赏2019-7-11第38页网络模型举例例如,教务管理系统

学生教学课程表教室课程教师谢谢观赏2019-7-11第39页关系模型其组织形式是一张二维表,一个表即一个关系;其特点:一个关系一张表数据独立性高操作简单一行是一个记录一列是一个数据项(字段)典型的RDBMS有:XBASE、VFP、Oracle、Sybase、DB/2、Informix、Access谢谢观赏2019-7-11第40页关系模型举例

商店关系

店名地址经办人电话解放路食品店解放路262号李国基2-5036桃园商场桃园路6号张山6-6161香香瓜果店北大街26号王宏3-6201白塔干鲜果店西大街56号宋良3-3637北大街果品店北大街231号林青3-1116谢谢观赏2019-7-11第41页数据库的构成

DBS=数据库+用户+软件+硬件硬件:指运行DBS的硬件资源,例如,

SQLServer要求至少16MB内存、32位CPU、至少80MB硬盘空间;软件:指DBS操作平台,例如WINDOWSNT、DBMS、汉字处理系统等;用户:指终端用户、应用程序员和数据库管理员。谢谢观赏2019-7-11第42页数据库视图

由于观察的角度不同,数据库中的数据的结构有三种不同的视图:用户视图也称用户级DB;即用户看到并可操作的那部分数据全局视图也称概念级DB;是数据库管理员看到并可操作的全部数据物理数据存储模式也称物理级DB;是DB中的各种信息在计算机中的实际分布和存储方式,它由操作系统和DBMS直接管理,用户不必了解,也不可能了解。谢谢观赏2019-7-11第43页三、计算模式简介计算机应用技术日新月异的发展应归功于计算技术的发展。计算技术的发展经历了三个阶段:单主机计算(MainframeComputing)分布式客户机/服务器计算(DistributedClient/ServerComputing)网络计算(NetworkComputing)

谢谢观赏2019-7-11第44页(一)单主机计算模式(1955-1985)以单台主机(功能强大)为中心,以非智能终端构成的集中式计算环境。特点:整个系统资源由单用户或多用户共享(分时技术),用户接口、I/O处理功能都集中在主机上。缺点:当处理负载过大时,主机性能就成为制约通信网络的“瓶颈”。解决方法:提高主机处理速度,增加主机数量。但成本高、管理复杂。因此限制了单主机模式的发展。谢谢观赏2019-7-11第45页单主机计算模式的30年

单主机计算模式经历了30年的发展史,按应用方式可划分为三个时代:程序设计时代(1955-1965)结构化程序设计时代(1965-1975)软件工程时代(1975-1985)谢谢观赏2019-7-11第46页1、程序设计时代硬件

早期是单主机,1960年后出现“主机/哑终端”结构形式;硬件由“CPU、内外存储器和外部设备”组成。软件

简单的操作系统、高级语言编译或解释器,以及少量的库函数和系统支持程序。应用领域大型科学计算和数据处理处理方式

分前台/后台处理;前台由系统操作员在控制台上作即席操作。后台以批处理方式服务于用户。系统分工系统操作员和应用程序员;前者负责操作,后者把高级语言作为虚拟机进行编程(不管操作)。谢谢观赏2019-7-11第47页程序设计时代(续)编译技术

由于CPU资源昂贵,高级编程语言多为编译型;初步形成“编译—连接—加栽—运行”的运作模式。60年代是编译技术的成熟期。程序设计为节省系统资源,程序设计重点是精选算法,语句精雕细琢,goto语句成了有力的武器,流程图成了程序设计的指南。由于汇编语言能够直接处理端口、中断、内存等实时操作,被认为是程序员应掌握的基本功。对大型程序采用“自顶向下”分析、求解的方法。谢谢观赏2019-7-11第48页2、结构化程序设计时代1962年美国金星探测器水手II号卫星失败,计算机界引起巨大震动。如何保证软件安全、可靠?由此引发了一场关于“GOTO”语句的争战。从理论上无法证明“带GOTO的程序是正确的”;程序测试只能证明“程序有错”,而不能证明“程序无错”;从理论上可以证明“只用三大基本程序结构(顺序、分支、循环)就可以实现任何算法”;最后论战的结论“限制、最终取消GOTO语句”。结构化程序设计方法数据库技术谢谢观赏2019-7-11第49页结构化程序设计方法定义一(北京大学王选院士)没有GOTO语句一个入口一个出口自顶向下、逐步求精的分解主程序员组定义二(清华大学潭浩强教授)自顶向下逐步求精模块化设计结构化编码谢谢观赏2019-7-11第50页结构化程序设计方法的特点程序结构规范化便于编程、调试、阅读大化小,难化简,提高编程效率符合人们解决问题的习惯便于自顶向下地求解便于集团协同作业模块化适合并行开发方式扩大了求解问题的规模70年代,程序最大已达385万句(美国国防部导弹预警系统)谢谢观赏2019-7-11第51页数据库技术数据文件的形式不适合管理海量数据随着解题规模的扩大,处理的数据量急剧增加用文件保存数据“难维护、难检索、难共享”的问题日益突出从60年代中期开始研究数据库系统DBS数据库系统DBS是专门处理和维护数据的软件系统具有数据定义、操纵的语言提供统一的SQL结构查询语言数据库的成功被认为是70年代计算机界的一大成就从此信息处理走上正轨关系型数据库数据元素之间存在一一对应关系(以二维表形式表示)的数据模型。因系统简单而被广泛采用。例如,FoxPRO、SQLServer、ORACLE等关系型数据库系统。谢谢观赏2019-7-11第52页3、软件工程时代随着社会对软件需求的日益增长,软件的规模也越来越大(例如,美国1979年的哥伦比亚航天飞机系统4000万条指令),这与软件的生产方式落后、生产效率低形成尖锐的矛盾,由次产生“软件危机”。为研究、解决软件危机,诞生了“软件工程学”。人们开始研究软件生产内部的规律,找出“软件生存周期”,用工程化的原理,科学地组织软件的生产,在一定程度上提高了软件的生产效率。软件生产开始步入软件工程时代。谢谢观赏2019-7-11第53页软件危机主要体现在:软件开发工程进度难以预测工期一再拖延,降低了开发组织的信誉软件开发成本难以控制投入一再追加,令人难以置信软件系统中的错误难以消除,质量无法保证绝对没错的软件不存在产品难以维护软件产品本质上是代码化的人的思维活动,他人难以替代典型的例子IBM公司开发OS/360系统,投入5000人年,耗资数亿美元,结果还是延期交付,使用后系统中仍发现大量错误。谢谢观赏2019-7-11第54页软件工程学软件工程学是把软件开发作为工程对象来研究,从技术措施和组织管理两个方面研究、解决软件危机的学科。软件工程方法论是开发软件的指导方法和必修课。进30年来,软件工程学已发展成一定的体系结构。软件工程学软件开发技术软件工程管理软件开发方法学软件工具软件工程环境软件管理学软件经济学谢谢观赏2019-7-11第55页传统程序设计方法的缺点

传统的程序设计方法虽然缓解了软件危机,但并不能完全消除软件危机,传统方法本身存在不可克服的问题。表现在:生产率提高的幅度远不能满足需要软件重用程度很低软件难以维护软件不能真正满足用户的需要据统计,在美国开发的软件系统中,真正符合用户要求并顺利投入使用的系统只占1/4,夭折的系统占1/4,近1/2的系统,虽完成了开发过程,但并未被用户采用或未被长期使用。谢谢观赏2019-7-11第56页面向对象程序设计技术现实世界的问题空间和软件的解空间之间存在很大的距离。业界人士从未中断过缩小这个距离的努力。面向对象(OO-ObjectOriented)方法是这种努力的一大成果。OO方法围绕现实世界的概念来组织模型,是一种全新的思考问题的方法。OO方法将客观世界看成是由许多不同种类的对象构成的。每个对象都有自己的内部状态和运动规律。不同对象之间的相互联系和相互作用就构成了完整的客观世界。谢谢观赏2019-7-11第57页OO方法的要点(1)客观世界由各种对象组成。OO的软件系统也是由对象组成的。任何复杂的软件都是由简单的对象组合而成的;(2)所有对象都可划分为不同的对象类。每个对象类都有自己特定的数据和方法;(3)对象类具有层次结构;上层的类称为“父类”或“基类”,下层的类称为“子类”或“派生类”。子类可以继承父类的特性及操操作;(4)对象之间通过传递消息互相联系(消息机制)。

OO方法=对象+对象类+继承性+消息机制谢谢观赏2019-7-11第58页(二)分布式客户机/服务器计算模式

(80年代—至今)微机应用

由于大规模集成电路技术的发展,微处理器诞生。80年代初,PC机进入市场,由此开始了微机应用新时代。特点微机功能强大、性能价格比占优,市场占有率高各种PC机版本的语言编译器应有尽有大众化数据库(Dbase、FoxPRO等)问世形成PC机应用软件的巨大市场谢谢观赏2019-7-11第59页网络应用

由于单机资源有

温馨提示

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

最新文档

评论

0/150

提交评论