信息技术基础数据库系统设计.ppt

上传人:牧羊曲112 文档编号:6040514 上传时间:2023-09-17 格式:PPT 页数:100 大小:392.50KB
返回 下载 相关 举报
信息技术基础数据库系统设计.ppt_第1页
第1页 / 共100页
信息技术基础数据库系统设计.ppt_第2页
第2页 / 共100页
信息技术基础数据库系统设计.ppt_第3页
第3页 / 共100页
信息技术基础数据库系统设计.ppt_第4页
第4页 / 共100页
信息技术基础数据库系统设计.ppt_第5页
第5页 / 共100页
点击查看更多>>
资源描述

《信息技术基础数据库系统设计.ppt》由会员分享,可在线阅读,更多相关《信息技术基础数据库系统设计.ppt(100页珍藏版)》请在三一办公上搜索。

1、数据库系统设计与开发,主讲:侯明昌电话:EMAIL:,主要内容,一、数据库系统设计基础二、VB基础三、ACCESS数据库基础四、基于VB+ACCESS的数据库系统设计与开发,教学要求,一、VB知识课下自学二、独立完成每一次作业三、成绩评定:平时成绩:平时作业与实验,占20%期中成绩:独立完成小型数据库管理系统,占20%期末成绩:期末闭卷考试,占60%四、考勤:根据学校教务处及学院要求,缺课三次者不允许参加期末考试请假要由辅导员或班主任签字,第一章数据库系统设计概述,1.1数据库系统设计概述 1.2需求分析1.3数据模型与概念结构设计 1.4逻辑结构设计 1.5 物理结构设计及实施和维护,1.1

2、数据库系统设计概述,数据、数据库、数据库管理系统和数据库系统的概念 一、数据数据(Data)是指存储在某一种媒体上能够识别的物理符号。数据的概念包括两个方面:其一是描述事物特性的数据内容,例如张明明出生于2001年1月1日;其二是存储在某一种媒体上的数据形式,例如可以把张明明的出生日期记录为“2001年1月1日”,1.1数据库系统设计概述,数据、数据库、数据库管理系统和数据库系统的概念 二、数据库 数据库(DataBase,简称DB)是指存储在计算机存储设备上,结构化的相关数据集合。三、数据库管理系统 数据库管理系统(Database Management System,DBMS)是位于用户与

3、操作系统之间的一层数据管理软件。DBMS的用途主要在于让人们科学地组织和存储数据、高效地获取和维护数据,或者说它是一个对数据实行专门管理,提供安全性和完整性等统一控制机制,方便用户以交互命令或程序方式对数据库进行操作的软件系统。,DBMS的主要功能,1、数据定义功能数据定义语言(Data Definition Language,简称DDL),用于让用户定义数据库中的数据对象。2、数据操纵功能数据操纵语言(Data Manipulation Language,简称DML),用于操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等。3、数据库的运行管理DBMS还需要保证数据的安全性、完整性

4、、多用户对数据的并发使用、发生故障后的系统恢复等,实现对数据库的统一管理和控制。4、数据库的建立和维护功能主要包括数据库数据批量装载、数据库转储、介质故障恢复、数据库的重组织、性能监视等,这些功能一般通过实用程序完成。DBMS总是基于某种数据模型的,根据其数据模型的不同,可以分为层次型、网状型、关系型、面向对象型等,其中关系型数据库管理系统以其完备的理论基础、简单的模型、说明性的查询语言和使用方便等优点得到最广泛的应用,如Oracle、SQL Server、Visual FoxPro、Access等。,四、数据库系统,数据库系统(Database System,简称DBS)是指引进数据库技术后

5、的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。其中数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。例如,以数据库为基础的财务管理系统、人事管理系统、图书管理系统、教学管理系统、生产管理系统等等。数据库系统的开发工具是指各种程序设计语言工具,如Visual Basic、Visual C、PowerBuilder、Delphi、Java等,它们为数据库系统的开发和应用提供良好的环境。数据库管理员(DataBase Adm

6、inistrator,简称DBA)是负责全面管理和控制数据库系统的一组专门人员,负责数据库系统的正常运行,承担创建、监控和维护数据库结构的责任。,四、数据库系统,数据库系统的构成,数据库系统的外部体系结构,数据库系统的外部体系结构是从数据库最终用户角度看,数据库系统分为单用户结构、主从式结构、分布式结构和客户服务器结构等类型。一、单用户数据库系统只供单个用户使用的,数据库系统的所有内容,包括应用程序、DBMS、数据,都装在一台计算机上,为一个用户独占,不与其他用户、其他计算机共享。也就是通常所说的“单机数据库系统”、“单机系统”。,数据库系统的外部体系结构,二、主从式结构的数据库系统也就是一个

7、主机带多个终端(多个用户)的系统结构。数据库系统的所有内容,包括应用程序、DBMS、数据,都集中存放在主机上,所有处理任务都由主机来完成,各个用户通过主机的终端并发地存取数据库,共享数据资源。优点:数据易于管理与维护。缺点:由于所有的处理任务都由主机独立完成,在多个用户同时操作数据库时,主机的任务就会十分繁重,从面成为瓶颈,使系统性能大幅度下降;尤其是当主机出现故障时,整个系统都不能使用,因此系统的可靠性不高。,数据库系统的外部体系结构,三、客户机/服务器结构的数据库系统客户机/服务器结构简称为C/S结构(Client/Server)。,C/S结构的最大特点是把数据库系统按功能分为两大部分,客

8、户机部分又称前端部分,主要是通过一些应用程序实现在用户界面进行如数据输入、格式处理、报表打印输出等功能,通过网络与服务器相连;服务器部分又称后端部分,是把数据存取、查询优化、并发控制、数据恢复等系统程序放在服务器上,在服务器上完成事务处理和数据访问控制。,数据库系统的外部体系结构,四、分布式结构的数据库系统 这种结构是指数据库物理地分布在计算机网络的不同结点上,但在逻辑上是一个整体。网络中的每个结点都可以独立处理本地数据库中的数据,执行局部应用;同时也可以同时存取和处理多个异地数据库中的数据,执行全局应用。,数据库系统的外部体系结构,五、浏览器/服务器结构 即B/S结构(Browser/Ser

9、ver结构)结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现。,1.2数据库系统开发过程与方法,数据库系统开发阶段 1、初始阶段2、细化阶段3、构建阶段4、移交阶段,1.2数据库系统开发过程与方法,数据库系统开发阶段 1、初始阶段根据系统规划中所确定的任务,对组织中的业务进行全面分析,确定信息系统的范围、边界和条件,确定系统的基本需求,分析系统开发将面临的风险,并从技术、经济和社会等多个方面对系统进行可行性分析,构建一个

10、能够反映系统概貌的基本构架,最终要制定项目开发的初步计划,包括项目组织、人员配备、工作进度、阶段成果和项目管理等,为下一步开发做好前期准备工作。,1.2数据库系统开发过程与方法,数据库系统开发阶段 2、细化阶段细化阶段是对业务、需求和系统进行深入分析,并排除重要风险,构建系统的初步原型,同时制定下一阶段的工作计划。,1.2数据库系统开发过程与方法,数据库系统开发阶段 3、构建阶段(1)对构建过程实施有效管理。需要制定详细的工作计划,根据计划调度和协调开发人员的工作。(2)系统开发。这是个迭代开发过程,每一次迭代都需要经历分析、设计、实现和测试等过程,得到经过测试的软件构件。这个构件将作为已开发

11、的系统的一个部分。(3)系统测试。对每一次迭代开发都要进行测试,检查系统中的错误,最后还要进行系统的整体测试。,1.2数据库系统开发过程与方法,数据库系统开发阶段 4、移交阶段系统构建完成后,需要对系统进行验收测试,并由用户进行评介,此时可能会由于用户的意见而会对系统进行修改、调整,在通过验收后就可以进行系统配置,搭建系统软硬件平台,使系统能在用户的环境中稳定运行,同时还需要对用户进行培训等,最后办理正式的移交手续。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 1、生命周期法与结构化系统开发方法 2、原型法3、面向对象开发方法,1.2数据库系统开发过程与方法,1.2.2 数

12、据库系统开发方法 1、生命周期法与结构化系统开发方法(1)生命周期法生命周期法(Life Cycle),又称瀑布法,是一种最传统的系统开发方法,始于20世纪70年代。在20世纪90年代以前,系统开发主要是使用生命周期法。生命周期法的主要思想是将开发过程视为一个生命周期,就象人的生命周期一样,是由若干个阶段构成,从出生,经历成长、成熟、衰老直至死亡。生命周期法将系统开发分为大致五个阶段:系统的可行性研究和战略规划、系统分析、系统设计、系统实施、系统运行维护。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 1、生命周期法与结构化系统开发方法(2)结构化系统开发方法 结构化系统开发

13、方法,也称为SSAD法(Structured System Analysis and Design)或SADT法(Structured Analysis and Design Technology),是指用一组标准的准则和工具从事某项工作。结构化系统开发方法包括结构化系统分析、结构化系统设计、结构化程序设计。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 1、生命周期法与结构化系统开发方法(2)结构化系统开发方法 结构化方法的基本思想:用系统工程的思想和工程化的方法,按用户至上的原则,结构化、模块化、自顶向下地对系统进行分析与设计。结构化方法要求严格按系统的生命周期划分开发阶

14、段,用规范的方法与图表工具有步骤地来完成各阶段的工作,每个阶段用都以规范的文档资料作为其成果,最终得到满足并创造用户需求的新系统。结构化系统开发方法是目前国内外较流行的信息系统开发方法,在系统开发中得到了广泛的应用和推广,尤其在开发复杂的大系统时,显示了无比的优越性。它也是迄今为止开发方法中应用最普遍最成熟的一种。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法 原型法(Prototyping)首先根据分析人员对用户要求的理解,在强有力的软件环境支持下,开发出一个系统原型,然后与用户反复协商修改,最终形成实际系统。与前面介绍的结构化方法相比,它扬弃了那种一步步周密细

15、致地调查分析,然后逐步整理出文字档案,最后才能让用户看到结果的繁琐做法。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法(1)原型法的基本思想在获得用户基本需求的基础上快速地构造系统工作模型,然后演示这个原型系统,在用户参与的情况下,按用户合理而又可行的要求,不断地修改这一原型系统。每次修改都使系统得到一个完整的新原型,直到用户满意为止。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法(1)原型法的基本思想,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法(2)原型法的优缺点优点:1)增进用户与开发人员之间的沟通

16、。2)用户主导系统开发过程。3)辨认动态的用户需求。4)辨认衍生式的用户需求。5)缩短开发周期,降低开发风险。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法(2)原型法的优缺点不足之处。原型法不如结构化生命周期法成熟和便于管理控制。原型法需要有自动化工具加以支持。由于用户的大量参与,也会产生一些新的问题,需要双方的全力合作才能克服这些困难。原型的开发者在修改过程中容易偏离原型的目标。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 2、原型法(2)原型法的优缺点原型法的优点主要在于能更有效地辨认用户需求。对于分析层面难度大、技术层面难度不大的系统,

17、适合于用原型法开发。而对于技术层面的困难远大于其分析层面的系统,则不宜用原型法。一般在系统设计中将原型法与结构化生命周期法结合起来使用,用原型法进行需求分析,以经过修改、确定的原型系统作为系统开发的依据,在此基础上完善系统说明书。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 3、面向对象开发方法面向对象开发方法(Object Oriented Method,OOM)是一种新的思维方法。其出发点和基本原则是,尽可能模拟人类习惯的思维方式,使开发软件的方法与过程接近人类认识世界、解决问题的过程,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 3、面向对象开发方法

18、面向对象的系统开发过程:四个阶段:OOA:即Object Oriented Analysis,面向对象分析阶段,也称为分析与求解问题阶段。OOA是在系统调查资料的基础上,利用信息模型技术识别问题域中的对象实体,标识对象之间的关系,确定对象的属性和方法,利用属性描述对象及其关系,并按照属性的变化规律定义对象及其关系的处理流程。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 3、面向对象开发方法面向对象的系统开发过程:四个阶段:OOD:即Object Oriented Design,面向对象的分析,是对系统发现的结果进一步抽象、归类、整理,以范式(物理模型)的形式确定,其主要作用

19、是对OOA分析的结果作进一步的规范化整理,以便能够被OOP直接接受。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 3、面向对象开发方法面向对象的系统开发过程:四个阶段:OOP:即Object Oriented Programming,面向对象的程序设计,就是利用面向对象的程序设计语言来进行编程,其基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。,1.2数据库系统开发过程与方法,1.2.2 数据库系统开发方法 3、面向对象开发方法面向对象的系统开发过程:四个阶段:OOT:即Object Oriented Test,面向对象的测试,是对系统分析、系统设计、程

20、序编码等运用面向对象的方法进行测试。,1.3 数据库系统开发设计过程,通常将数据库系统设计分为以下六个阶段:需求分析概念结构设计逻辑结构设计物理结构设计数据库系统实施数据库系统运行和维护,1.3.1 需求分析,需求分析就是分析用户的要求,是设计数据库的起点,是后继各阶段的基础。需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。需求分析的过程主要包括四个阶段。1、调查与分析整理阶段2、绘制数据流图3、编制数据字典4、用户确认及修订,一、需求调查与分析整理,1、调查的任务(1)

21、信息要求。指用户需要从数据库中获得信息的内容与性质。由信息要求可以导出数据要求,即在数据库中需要存储哪些数据。(2)处理要求。指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。(3)安全性与完整性要求。,一、需求调查与分析整理,2、调查步骤(1)调查组织机构情况。包括了解该组织的部门组成情况、各部门的职责等,为分析信息流程做准备。(2)调查各部门的业务活动情况。包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么,这是调查的重点。(3)在熟悉了业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求

22、、处理要求、完全性与完整性要求,这是调查的又一个重点。(4)确定新系统的边界。对前面调查的结果进行初步分析,确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。,一、需求调查与分析整理,2、调查步骤 常用的调查方法有:(1)跟班作业。通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。(2)开调查会。通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。(3)请专人介绍。(4)询问。对某些调查中的问题,可以找专人询问。(5)设计调查表请用户填写。如果调查表设计得合理,这

23、种方法是很有效,也易于为用户接受。(6)查阅记录。查阅与原系统有关的数据记录。,一、需求调查与分析整理,3、需求调查相关文档(1)需求调查计划,一、需求调查与分析整理,3、需求调查相关文档(2)需求调查记录,二、绘制数据流图,数据流图(Data Flow Diagram,简称DFD)用来描述系统的功能。数据流图以图形的方式描绘数据在系统中的流动和处理的过程,可以形象地描述事务处理与所需数据有关联,便于用结构化系统方法,自项向下,逐层分析,步步细化。1、数据流图的基本图形符号:箭头,表示数据流:圆或椭圆,表示数据处理或加工:双杠,表示数据存储:方框,表示数据的起始点(源点、终点),2、数据流图的

24、绘制,(1)绘制系统的输入/输出就是画系统的项层数据流图(项层流图)。第一步,项层流图只包含一个数据处理,所以要先用一个圆或椭圆用以标识被开发的系统。第二步,考虑该系统有哪些输入数据,这些输入数据的来源;第三步,系统有哪些数据需要输出,输出的去向。项层流图的作用在于表示被开发的系统的范围以及它和周围环境的数据交换关系,一个系统只能有一张项层流图。,2、数据流图的绘制,(1)绘制系统的输入/输出下图为飞机票预订系统的项层流图。,2、数据流图的绘制,(2)绘制系统内部 就是绘制下层数据流图。绘制系统内部数据流图时,往往需要根据系统数据的处理加工进行分解,划分层次。一般将层号从0开始编号,采用自项向

25、下,由外向内的原则。0层数据流图是系统内部的第一层,一般要根据当前系统工作分组情况,并按新系统应有的外部功能,分解项层流图为若干子系统,决定每个子系统间的数据接口和活动关系。画更下层数据流图时,则分解上层图中的数据处理加工,一般沿着输入流的方向,凡数据流的组成或值发生变化的地主则设置一个数据处理加工,这样一直进行到输出数据流,也可从输出流到输入流的方向来画。如果数据处理加工的内部还有数据流,则对此加工在下层图中继续分解,直到每一个加工足够简单,不能再分解为止。不能再分解的加工称为基本加工。,2、数据流图的绘制,(2)绘制系统内部 下图为飞机票预订系统的0层数据流图。,三、编制数据字典,数据流图

26、表达了数据和处理的关系,数据字典(Data Dictionary,简称DD)则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果.数据字典在数据库设计中占有很重要的地位。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。,三、编制数据字典,1、数据项数据项是不可再分的数据单位。对数据项的描述通常包括以下内容:数据项描述=数据项名,数据项含义说明,别名,数据类型,长度,取值范图,取值含义,与其他数据项的逻辑关系,数据项

27、之间的联系其中“取值范围”、“与其他数据项的逻辑关系”(例如该数据项等于另几个数据项的和,该数据项值等于另一数据项的值等)定义了数据的完整性约束条件,是设计数据检验功能的依据。,三、编制数据字典,1、数据项,三、编制数据字典,2、数据结构数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构棍合组成。数据结构描述=数据结构名,含义说明,组成:数据项或数据结构,三、编制数据字典,3、数据流 数据流是数据结构在系统内传输的路径。数据流描述=数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量其中“数据流来

28、源”是说明该数据流来自哪个过程。“数据流去向”是说明该数据流将到哪个过程去。“平均流量”是指在单位时间(每天、每周、每月等)里的传输次数。“高峰斯流量”则是指在高峰时期的数据流量。,三、编制数据字典,3、数据流,三、编制数据字典,4、数据存储 数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可以是计算机文档。数据存储描述=数据存储名,说明,编号,输入的数据流,物出的数据流,组成:数据结构,数据量,存取频度,存取方式其中“存取频度”指每小时或每天或每周存取几次、每次存取多少数据等信息。“存取方式”包括是批处理还是联机处理;是检索还是更新;是顺序检索还

29、是随机检索等。另外,“输入的数据流”要指出其来源,“输出的数据流”要指出其去向。,三、编制数据字典,4、数据存储,三、编制数据字典,5、处理过程 处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息。处理过程描述=处理过程名,说明,输入:数据流,输出:数据流,处理,简要说明其中“简要说明”中主要说明该处理过程的功能及处理要求。功能是指该处理过程用来做什么(而不是怎么做),处理要求包括处理频度要求,如单位时间里处理多少事务、多少数据量、响应时间要求等。,三、编制数据字典,5、处理过程,四、编写需求文档及需求评审与确认,需求文档的主要内容包括:(1)前言说明项

30、目的目的、范围,所用的术语的定义,参考资料等(2)项目概述产品的描述,产品功能,用户特点,一般的约束等。(3)具体需求说明每个功能的输入、处理和输出;外部接口需求(用户接口、软件接口、硬件接口、通信接口等);性能需求;设计约束;其他需求等。需求文档完成后,项目开发方要与用户方共同评审需求文档,检查需求文档中的每一个需求,确保其正确、清晰、完备、可实现及可验证等,符合用户的真实意愿。,1.3.2 数据模型与概念结构设计,概念结构设计就是将需求分析得到的用户需求抽象为信息结构即概念模型的过程。需求分析阶段描述的用户应用需求是现实世界的具体需求,将需求分析得到的用户需求抽象为信息结构即概念模型的过程

31、就是概念结构设计,概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。,1.3.2 数据模型与概念结构设计,一、数据模型 数据模型(Data Model)是专门用来抽象、表示和处理现实世界中的数据和信息的工具。计算机系统是不能直接处理现实世界的,现实世界只有数据化后,才能由计算机系统来处理这些代表现实世界的数据。为了把现实世界的具体事物及事物之间的联系转换成计算机能够处理的数据,必须用某种数据模型来抽象和描述这些数据。数据模型是数据库系统的核心。通俗地讲,数据模型是现实世界的模拟。,二、概念模型基本概念,1、实体(entity)实体是一个数据对象,指应用中可以区别

32、的客观存在的事物。实体既可以是实际存在的对象,也可以是某种概念。2、属性(attribute)实体所具有的某一特性成为属性。一个实体可以由若干个属性来描述。属性有属性名和属性值之分 3、实体集(entity set)所有属性名完全相同的同类实体的集合,称为实体集。如全体职工就是一个实体集,为了区分实体集,每个实体集都有一个名称,即实体名。职工实体指的是名为职工的实体集,而(1010,陈平,男,34,工程师,02)是该实体集中的一个实体,同一实体集中没有完全相同的两实体。,二、概念模型基本概念,4、码(Key)能惟一标识实体的属性或属性集,称为码,有时也称为实体标识符,或简称为键。如职工实体中的

33、职工号属性。5、域(Domain)属性的取值范围称为该属性的域(值域),如“职工性别”的属性域为男,女。6、实体型(Entity Type)实体集的名及其所有属性名的集合,称为实体型。如职工(职工号、姓名、性别、年龄、职称、部门)就是职工实体集的实体型。实体型抽象地刻画了所有同集实体,在不引起混淆的情况下,实体型往往简称为实体。,三、概念模型中实体的联系,1、一对一联系(1:1)如果对于实体集E1中的每个实体,实体集E2至多有一个(也可没有)实体与之联系,反之亦然,那么实体集E1和E2的联系称为“一对一联系”,记为“1:1”,三、概念模型中实体的联系,2、一对多联系(1:n)如果实体集E1中每

34、个实体可以与实体集E2中任意个(零个或多个)实体间有联系,而E2中每个实体至多和E1中一个实体有联系,称E1对E2的联系是“一对多联系”,记为“1:n”,三、概念模型中实体的联系,3、多对多联系(m:n)如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,E1和E2的联系是“多对多联系”,记为“m:n”,四、概念模型的表示方法,1、ER图的组成要素及其画法,实体名,学生,属性名,学号,联系名,选课,四、概念模型的表示方法,1、ER图的组成要素及其画法,四、概念模型的表示方法,2、建立E-R图建立E-R图的步骤:确定实体和实体的属性;确定实体和实体之间的联系及联系

35、的类型;给实体和联系加上属性。,四、概念模型的表示方法,2、建立E-R图,1.3.3 逻辑结构设计,一、逻辑结构设计过程逻辑结构设计就是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。通常把概念模型向逻辑模型的转换过程分为3步进行:1)把概念模型转换成一般的数据模型。2)将一般的数据模型转换成特定的DBMS所支持的数据模型。3)通过优化方法将其转化为优化的数据模型。,二、E-R模型向关系模型的转换,概念模型向关系数据模型的转化就是将用ER图表示的实体、实体属性和实体联系转化为关系模式。具体而言就是转化为选定的DBMS支持的数据库对象。转换原

36、则:一个实体转换为一个表(Table),则实体的属性转换为表的列(Column),实体的码转换为表的主键(Primary Key),二、E-R模型向关系模型的转换,实体间的联系根据联系的类型转换 1:n的联系:1:n的联系是比较普遍的联系,其转换比较直观。如:ER图中出版社和图书的关系是1:n的联系,转换成:表:出版社(出版社编号、出版社名称);表:图书(图书编号、书名、图书分类、出版社编号、单价、复本数量、库存量、日罚金、是否新书)。图书表中增加了一个“出版社编号”属性,它是一个外键,是出版社的主键。转换规律是在n端的实体对应的表中增加属性,该属性是1端实体对应表的主键。,二、E-R模型向关

37、系模型的转换,实体间的联系根据联系的类型转换 1:1的联系:1:1联系是1:n联系的特例,两个实体分别转换成表后,只要在一个表中增加外键,一般在记录数较少的表中增加属性,作为外键,该属性是另一个表的主键。如ER图中的借阅人和借阅卡是1:1的联系,转换成:表:借阅人(读者编号、姓名、读者类型、密码、已借数量、Email地址、电话号码)表:借阅卡(借阅卡编号、读者编号)两端的实体分别转化成表“借阅人”和“借阅卡”,在“借阅卡”表中增加了一个外键“读者编号”,“读者编号”是“借阅人”表中的主键。,二、E-R模型向关系模型的转换,实体间的联系根据联系的类型转换 m:n的联系:通过引进一个新表来表达两个

38、实体间多对多的联系,新表的主键由联系两端实体的主键组合而成,同时增加相关的联系属性。如:在ER图中借阅人和图书的联系是m:n联系,转换成:表:借阅人(读者编号、姓名、读者类型、密码、已借数量、Email地址、电话号码)表:图书(图书编号、书名、图书分类、出版社编号、单价、复本数量、库存量、日罚金、是否新书)。表:借阅表(读者人编号、图书编号、借阅日期、是否续借、续借日期、是否已归还、归还日期)新增表的“借阅表”中“借阅人编号”和“图书编号”组合为主键,分别是外键,其中“读者编号”是借阅人表的主键,“图书编号”是图书表的主键。同时增加了借阅相关的属性:日期、是否续借、续借日期、是否已归还、归还日

39、期。,注:关系模型的优化,1、问题的提出,?,关系模型的优化,2、规范化的涵义 范式是符合某一种级别的关系模式的集合。规范化目的是使结构更合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新。规范化原则:遵从概念单一化(“一事一地”)原则,即一个关系模式描述一个实体或实体间的一种联系。规范的实质就是概念的单一化。规范化方法:将关系模式投影分解成两个或两个以上的关系模式。规范化要求:分解后的关系模式集合应当与原关系模式“等价”,即经过自然联接可以恢复原关系而不丢失信息,并保持属性间合理的联系。,关系模型的优化,2、规范化的涵义 目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF

40、)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)就行了。下面我们举例介绍第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。各种范式之间存在联系:,关系模型的优化,3、第一范式(1NF)如果一个关系模式R的所有属性都是不可分的基本数据项,则称R满足第一范式,记为R1NF。在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。,关系

41、模型的优化,4、第二范式(2NF)如果关系R属于1NF,且每个非主属性完全函数依赖于主关键字,则关系模式R属于第二范式。所谓非主属性,指哪些不能惟一标识元组(记录)的属性。主关键字(主属性)是指能惟一标识元组的属性。,“学分”这个非主属性不完全函数依赖于主关键字“学号+课程编号”,也就是“学分”部分依赖组合关键字(学号+课程编号)而不是完全依赖。所以,这个选课成绩表不属于2NF。,关系模型的优化,5、第三范式(3NF)如果R属于2NF,且每个非主属性都不传递函数依赖于主关键字,则关系模式R属于第三范式。,学号是主关键字,即每个学生只能有一个学号,关键字学号决定各个属性。由于是单个关键字,没有部

42、分依赖的问题,也就是姓名、年级、专业、系名这几个非主属性完全函数依赖于主关键字“学号”,所以,这个表属于2NF。,关系模型的优化,数据库的规范化处理总结:就是逐步地分析处理原有的信息表。首先简化属性,使之每个属性都不可再分,成为满足第一范式的数据表;然后分解数据库,并设定主关键字,使之成为满足第二范式的数据表;最后消除数据表中数据元素对主关键字的传递依赖关系,使之成为满足第三范式的数据表。,1.3.4物理结构设计及实施和维护,数据库的物理设计就是选取一个适合的物理结构(存储结构与存取方法)的来具体实现逻辑数据模型。物理结构依赖于给定的DBMS和和硬件系统,因此设计人员必须充分了解所用DBMS的

43、内部特征,特别是存储结构和存取方法;充分了解应用环境,特别是应用的处理频率和响应时间要求;以及充分了解外存设备的特性。数据库的物理结构设计包括两个步骤:确定数据库的物理结构,在关系数据库中主要是存储结构和存储方法;对物理结构进行评价,评价的重点是时间和空间的效率。,1.3.4物理结构设计及实施和维护,数据库的物理设计完成后,设计人员就要用DBMS提供的数据定义语言和其它应用程序将数据库逻辑设计和物理设计结果严格地描述出来,成为DBMS可以接受的源代码,再经过调试产生出数据库模式。然后就可以组织数据入库、调试应用程序,这就是数据库实施阶段。在数据库实施后,对数据库进行测试,测试合格后,数据库进入

44、运行阶段。在运行的过程中,要对数据库进行维护。,1.3.4物理结构设计及实施和维护,1、数据库的实施(1)建立数据库建立数据库是在指定的计算机平台上和特定的DBMS下,建立数据库和组成数据库的各种对象。建立数据库模式:主要是数据库对象的建立,数据库对象可以使用DBMS提供的工具交互式的进行,也可以使用脚本成批地建立。数据的载入:建立数据库模式,只是一个数据库的框架。只有装入实际的数据后,才算真正地建立了数据库。,1.3.4物理结构设计及实施和维护,1、数据库的实施(2)测试数据库测试一般与应用系统测试结合起来,通过试运行,参照用户需求说明,测试应用系统是否满足用户需求,查找应用程序的错误和不足

45、,核对数据的准确性。如果功能不满足和数据不准确,对应用程序部分要进行修改、调整,直到满足设计要求为止。对数据库的测试,重点在两个方面:一是通过应用系统的各种操作,数据库中的数据能否保持一致性,完整性约束是否有效实施;二是数据库的性能指标是否满足用户的性能要求,分析是否达到设计目标。,1.3.4物理结构设计及实施和维护,2、数据库的维护(1)数据库的转储和恢复(2)数据库的安全性和完整性控制(3)数据库性能的监控、分析和改造(4)数据库的重组和重构,1.4 常用关系数据库管理系统,1、Oracle数据库Oracle(甲骨文)是一个最早商品化的关系型数据库管理系统,是世界第一个支持SQL语言的数据

46、库,也是应用广泛、功能强大的数据库管理系统。,1.4 常用关系数据库管理系统,2、DB2数据库DB2数据库IBM公司研制的一种关系型数据库系统。DB2数据库核心又称作DB2公共服务器,DBZ数据库采用多进程多线索体系结构,可以运行于多种操作系统之上,并分别根据相应平台环境作了调整和优化,以便能够达到较好的性能。它支持从个人计算机到UNIX服务器、从中小型机到大型机、从IBM到非IBM(HP及SUN UNIX系统等)各种操作平台。DB2数据库既可以在主机上以主/从方式独立运行,也可以在客户/服务器环境中运行,其中服务平台可以是OS/400、AIX、OS/2、HP UNIX、SUN Solaris

47、等操作系统,客户机平台可以是OS/2或Windows、Dos、AIX、HP UX、SUN Solaris等操作系统。,1.4 常用关系数据库管理系统,3、SQL Server数据库SQL Server是一个关系数据库管理系统。它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在Windows NT推出后,Microsoft与Sybase在SQL Server的开发上就分道扬镳了,Microsoft将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本,目前

48、最新的版本是SQL Server 2008。,1.5 数据库应用系统开发工具,系统开发工具简介 系统开发工具可以分为需求分析工具、设计工具、编码工具、测试工具、运行维持工具和项目管理工具等。1、需求分析工具需求分析工具是在系统分析阶段用来严格定义需求规格的工具,它能将应用系统的逻辑模型清晰地表达出来。,1.5 数据库应用系统开发工具,1、需求分析工具需求分析工具属于系统分析阶段的工具,它主要包括数据流图(DFD)绘制与分析工具、图形化的E-R图编辑和数据字典的生成工具、面向对象的模型与分析工具以及快速原型构造工具等。例如美国LogicWorks公司的ERwin和Bpwin,就是基于数据结构设计

49、方法的数据库设计工具,它能进行E-R图的绘制,直接生成各种数据库的关系模式,还能从现有的数据库应用系统中生成相应的E-R图。美国Rational公司的Rose是使用统一建模语言进行面向对象系统分析与设计的可视化工具。,1.5 数据库应用系统开发工具,2、设计工具设计工具是用来进行系统设计的,它将设计结果描述出来形成设计说明书,并检查设计说明书中是否有错误,然后找出并排除这些错误。总体设计的工具主要是系统结构图的设计工具。详细设计的工具主要有HIPO图工具、PDL支持工具、数据库设计工具及图形界面设计工具等。,1.5 数据库应用系统开发工具,3、编码工具在程序设计阶段,编码工具可以为程序员提供各

50、种便利的编程作业环境。编码阶段的工具主要包括各种正文编辑器、常规的编译程序、链接程序、调试跟踪程序以及一些程序自动生成工具。,1.5 数据库应用系统开发工具,4、测试工具测试阶段的工具有静态分析器、动态覆盖率测试器、测试用例生成器、测试报告生成器、测试程序自动生成器及环境模拟器等。在Windows client/server应用领域较出色的产品有美国SQA公司的SQA Suite,其中SQA TeamTest提供客户端图形用户界面(GUI)应用的自动化测试手段,SQA client/server用于多用户并发运行情况下的测试。,1.5 数据库应用系统开发工具,5、运行维护工具软件运行维护阶段的

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号