数据库原理及应用课程设计指导课件.ppt

上传人:牧羊曲112 文档编号:6578449 上传时间:2023-11-14 格式:PPT 页数:90 大小:1.35MB
返回 下载 相关 举报
数据库原理及应用课程设计指导课件.ppt_第1页
第1页 / 共90页
数据库原理及应用课程设计指导课件.ppt_第2页
第2页 / 共90页
数据库原理及应用课程设计指导课件.ppt_第3页
第3页 / 共90页
数据库原理及应用课程设计指导课件.ppt_第4页
第4页 / 共90页
数据库原理及应用课程设计指导课件.ppt_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《数据库原理及应用课程设计指导课件.ppt》由会员分享,可在线阅读,更多相关《数据库原理及应用课程设计指导课件.ppt(90页珍藏版)》请在三一办公上搜索。

1、CS/SGU,数据库课程设计,第一节 课程设计介绍第二节 课程设计相关知识第三节 实例分析第四节 课程设计安排及题目分配,数据库课程设计,CS/SGU,第一节 课程设计介绍,教学目的:1、能结合教材上关于数据库设计的思想和方法,对一些简单的信息管理问题进行必要的分析和设计。2、巩固已学习的数据库原理、程序设计语言等课程的基础知识,培养分析和解决数据库系统的实际问题的能力。3、能查阅资料解决数据库技术方面的问题。,CS/SGU,第一节 课程设计介绍,本课程设计任务 1、数据库应用系统的需求分析(难点)2、数据库设计(重点)3、小应用系统的软件开发。(难点),软件工程,数据库原理,开发工具,CS/

2、SGU,第一节 课程设计介绍,数据库应用系统的需求分析 通过相关资料查阅和学习,了解基本的业务流程和系统数据功能要求,完成需求分析,画出数据流图及数据字典。,CS/SGU,第一节 课程设计介绍,数据库设计 数据库设计的六个阶段(重点是前四个阶段)进行分析和设计。1、需求分析阶段要画出数据流图及数据字典;2、概念结构设计阶段要画出ER图;3、逻辑结构设计阶段根据概念结构建立相应的关系数据模型,并进行必要的规范化和优化;4、物理结构设计阶段在具体的DBMS环境下建立所设计的数据库和基本表以及必要的索引。,CS/SGU,第一节 课程设计介绍,小应用系统的软件开发 利用熟悉的开发工具或语言开发数据库应

3、用程序。要求:使用SQL语言进行数据操纵;注意嵌入式SQL语言几个问题的解决;在设计中要运用视图;功能上应具备与应用有关的对基本数据的输入、修改、删除、查询等操作;应有一定的安全性控制。注:开发工具不限,返回首页,CS/SGU,第二节 课程设计相关知识,一、软件工程知识部分二、数据库设计三、系统实现部分,涉及到多方面的知识和内容,同学们一定要多查资料、多参考,返回首页,CS/SGU,软件工程部分,1 结构化生命周期法,2 需求分析,3系统分析(SA方法、DFD和DD),4系统设计,CS/SGU,软件工程部分,一、结构化生命周期法是目前比较成熟的方法,其基本思想是将整个系统开发过程划分为需求分析

4、、系统设计、系统实施、系统运行与维护4个阶段。第一阶段与最后一个阶段首尾相连,形成系统开发的周期循环过程。,系统设计,系统实施,系统运行与维护,数据库应用系统开发过程,1、系统规划2、系统分析,1、总体设计2、详细设计3、数据库设计4、编写系统设计说明书,需求分析,CS/SGU,软件工程部分,二、需求分析 需求分析可分为系统规划和系统分析两个阶段。1、系统规划:又称系统调查,该阶段的主要任务是根据用户提出的系统开发请求,进行初步调查,明确系统要完成的主要功能及其要求和产生的信息,即确定总体结构方案,然后进行可行性研究。1)技术可行性-确定现有技术是否满足系统开发要求。2)经济可行性-从经济上分

5、析工程是否合算、可行。3)社会可行性-确定在当前环境下,系统能否按设计方案顺利运转。,CS/SGU,软件工程部分,三、系统分析 根据系统规划阶段所确定的系统总体结构方案对现有的管理系统进行详细调查研究,从调查所获取的信息中分析出合理的信息流动、处理、存储的过程,即建立目标系统的逻辑模型。该阶段的主要工作是:明确目标系统到底要“做什么”,从而从当前系统的逻辑模型导出目标系统的逻辑模型。编写系统需求说明书 主要是数据流程图和数据字典,CS/SGU,软件工程部分,四、SA方法简介 结构化(Structured Analysis,简称SA)分析方法是系统分析常用的方法。SA方法就是“自顶向下、逐层分解

6、”的方法。它利用分解和抽象这两个基本手段控制系统的复杂性,把大问题分解中小问题,然后分别解决。分解是逐层进行的,先考虑问题最主要的属性,暂时略去具体细节,以后再逐层添加细节,直到考虑到最详细的、不可再分解的问题。SA方法通过一套分层次的数据流程图描述系统的功能和数据的流动。,CS/SGU,五、数据流图(Data Flow Diagram,DFD)数据流图(Data Flow Diagram)就是组织中信息运动的抽象,是信息逻辑系统模型的主要形式。表示系统内部信息的流向,并表示系统的逻辑处理的功能。但在DFD中并没有表达出每个数据和处理的具体含义,这些信息需要在数据字典中描述。,CS/SGU,数

7、据流图基本元素,数据流图有四种元素:外部实体、数据流、数据处理、数据存储。,外部实体:指系统以外又与系统有联系的人或事物。它表达该系统数据的外部来源和去处。如顾客、供货商、另一个信息系统,数据流:即流动中的数据。箭头表示数据流动的方向。数据流除了流向或流出文件者可以不命名,都必须有一名字。,数据存储:表示数据的暂存场所(逻辑上)。可对其进行存取操作。指向或离开文件的数据流代表了对文件的存入或读取操作。,数据处理:对数据进行特定加工的过程。每个处理都应有一个能表达它的作用和功能的名字。对多层的DFD,每个处理应有一编号。,CS/SGU,画数据流图方法,画数据流图的方法:(从问题描述中提取数据流图

8、的四种成分。)例:一家工厂的采购部每天需要一张定货报表,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件列出下述数据:零件编号、零件名称、定货数量,目前价格、主要供应者。零件入库应有入库单,零件出库应有出库单,通过放在仓库中的CRT终端把入库单或出库单报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。分析:数据源点和终点、处理、数据流、数据存储注意:一个简单的系统可用一张数据流图表示。当系统比较复杂时,应当采用分层描述的方法。一般第一层描述系统的全貌,第二层分别描述各子系统的结构。如还未表达清楚,可以继续细化。,CS/SGU,数据流程图基本步骤,第一步:考虑外部实

9、体。数据的源点为仓库管理员和终点为采购员。第二步:考虑处理。产生报表、单据处理(包括零件入库单、出库单处理)。第三步:考虑数据流和数据存储。定货报表,入库单,出库单信息均为数据流。而库存清单和定货信息是数据存储。,第一层DFD,CS/SGU,数据流图的细化,a关联图,.3,.2,图0,G,Q,R,L,S,M,A,B,C,A,B,C,D,E,F,G,1,2,3,5,6,图2.1,b顶层图,d三层图,c二层图,绘制数据流图过程示意图,CS/SGU,细化DFD,?,CS/SGU,数据流图的绘制原则,绘制数据流图的主要原则(1)明确系统界面。(2)自顶向下逐层扩展。(3)合理布局。(4)数据流图绘制过

10、程,就是系统的逻辑模型的形成过程,必须始终与用户密切接触,详细讨论,不断修改,也要和其他系统建设者共同商讨以求一致意见。,CS/SGU,绘制数据流图注意事项,绘制数据流图的注意事项(1)自顶向下、逐层分解(2)数据流必须通过加工(3)数据存储环节一般作为两个加工环节的 中介来安排(4)编号,CS/SGU,数据字典,六、数据字典的作用和内容 字典的作用是给词汇以定义和解释。在结构化分析中,数据字典(Data Dictionary)的作用是给数据流图上每个成分以定义和说明。换句话说,数据流图上所有成分的定义和解释的文字集合就是数据字典。,CS/SGU,数据字典,数据字典描述的主要内容有:数据元素、

11、数据流、数据存储、数据加工和外部项,其中数据元素是组成数据流的基本成分。在系统分析中,数据字典起着重要作用。它包含关于系统的详细信息。一般来说,系统分析人员把不便在数据流图上注明而对于系统分析应该获得、对整个系统开发以至将来系统运行与维护是必需的信息尽可能放入数据字典。总的来说,数据字典对数据流图中有关成分的描述说明下列问题:什么?(是什么或做什么)何处?(在何处或者来自何处)何时?(何时出现、时间长短),CS/SGU,数据字典,定义数据流 一个数据流可以由一个或几个数据元素项组成,数据元素是不可再分解或在当时情况下不必再分解的简单数据项。所以,要定义数据流就要先定义所有数据元素。由于个数据元

12、素可以出现在多个数据流中。所以,在数据字典中要把对数据流、数据元素的定义分开。即数据字典分别是对数据流的定义、对数据元素的定义。,数据流名称:入库单 标识符:F1 数据流来源:仓库管理人员填写入库单 数据流去向:处理数据流组成:入库单号+入库日期+操作员+采购来源+发票号+物资编码+数量+单价 备注:一张入库单可对应多个发票的多个物资,一张发票的物资也可以分散在多个入库单上,CS/SGU,数据字典,定义数据元素 数据元素是数据流的基本组成项,可以说,只有数据元素被定义了,数据流才能被最后定义下来。数据元素定义一般包括以下内容:,数据元素书写格式,CS/SGU,数据字典,定义数据存储 数据存储的

13、组成与数据流类似,即由若干数据元素。所以,在DD中数据存储定义部分也分二个层次,分别定义数据存储自身和数据元素。由于数据元素的公用性,组成数据存储的数据元素凡在数据流部分已经定义的可不再定义,直接调用(指明其编号)。当然,对未定义的数据元素应做出定义。同时在数据存储定义部分定义的数据元素应与在数据流定义部分定义的数据元素统一编号,统一装订,以便检索。,数据存储名称:库存清单 标 识 符:D1简 述:记录物资库存的信息组 成:日期+物资代码+物资名称+月初 库存数+当月累计入库量+当月累计出库量+当日月余关 键 字:日期+产品代码涉及的处理:,CS/SGU,数据字典,定义外部项 系统的外部项(源

14、点和终点)是系统环境中的实体。因为它们与系统有信息联系,在DD中应对它们逐一定义。,外部项书写格式,外部实体编号:Sba外部实体名称:仓库管理员简述:管理产品出入库输入的数据流:输出的数据流:入库单(F1)、出库单,CS/SGU,数据字典,定义数据处理 对加工的定义主要是描述处理逻辑,亦称加工逻辑。所谓处理逻辑是指处理做什么?处理对输入数据流做出怎样的变换使之成为输出数据流的。要定义处理首先要分析处理,弄清楚处理要做什么,其次要把处理逻辑表达出来。处理逻辑的分析应当是客观的、严格的、准确的。处理逻辑的表达应当是严谨的。,处理逻辑名称:更新库存清单标识符:输 入:D1、输 出:数据存储D1处 理

15、:将出、入库单信息登记到D1库存清单。,CS/SGU,系统设计,七、系统设计阶段 该阶段实际上是根据目标系统的逻辑模型确定目标系统的物理模型,即解决目标系统“怎样做”的问题。其主要工作包括:总体设计。完成应用系统的模块结构设计。(次重点)详细设计。为各个模块选择适当的技术手段和处理方法,包括输入、输出和代码等进行设计。(简略)数据库设计。设计并描述出本应用系统的数据库结构及其内容组成。在进行数据库设计时,应遵循数据库的规范化设计原则。(重点)编写系统设计说明书(简略),CS/SGU,系统设计,1、系统模块设计的原则:系统模块结构设计也常常采用“自顶向下、逐层分解”的方法,将整个系统划分为若干相

16、对独立的功能模块。分解后的功能模块称为子模块,如果子模块功能还比较复杂,再继续对其进行分解,直到每个模块的功能仅完成一项任务为止。另外,应遵循使模块“相对独立、功能单一”原则,即划分模块的原则是使模块有尽可能高的内聚和尽可能低的耦合。,CS/SGU,系统设计,模块结构图由二种成分组成,它们是:1)模块 一个模块使用一个矩形框来表示,模块的名称写在矩形框中,通常是一个动宾结构的词组。模块结构图中最底层的模块通常称为基本模块。2)调用 调用是模块结构图中模块之间的控制方式。表示调用关系的图形是从调用模块指向被调用模块的箭头。被调用模块称为调用模块的直接下层模块。模块结构图限制调用关系只能是上层模块

17、调用下层模块,不允许下层模块调用上层模块。通常不允许同层模块之间的调用。所以箭头总是向下,不允许向上。,如上例“定货系统”,根据该系统的数据流程图和模块的设计原则,可画出模块结构图如下:,返回本节,CS/SGU,1 数据库设计概述,2 概念结构设计(ER图),3 逻辑结构设计(关系模式),4 物理结构设计,数据库设计部分,CS/SGU,数据库设计概述,数据库设计 广义地讲是数据库及其应用系统的设计,即设计整个的数据库应用系统。狭义地讲是设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。,CS/SGU,数据库设计的步骤,现实世界,观念世界,数据世界,用户需求分析

18、,概念结构设计,逻辑结构设计,物理结构设计,E-R图,数据模型,概念结构设计,逻辑结构设计,DFD图,CS/SGU,数据库设计的步骤,详细过程总体设计过程,CS/SGU,1 数据库设计概述,2 概念结构设计(ER图),3 逻辑结构设计(关系模式),4 物理结构设计,CS/SGU,ER图建模,实体及其联系,概念模型,ER图,概念结构设计,CS/SGU,概念结构设计,一、数据抽象在系统需求分析阶段,最后得到了多层数据流图、数据字典和系统分析报告。建立局部E-R模型,就是根据系统的具体情况,在多层的数据流图中选择一个适当层次的数据流图,作为设计分E-R图的出发点,让这组图中毎一部分对应一个局部应用(

19、获得局部E-R模型)。在前面选好的某一层次的数据流图中,每个局部应用都对应了一组数据流图,局部应用所涉及的数据存储在数据字典中。设计局部E-R模型的关键就是正确划分实体和属性。实体和属性之间在形式上并无可以明显区分的界限,通常是按照现实世界中事物的自然划分来定义实体和属性,将现实世界中的事物进行数据抽象,得到实体和属性。一般有两种数据抽象:分类和聚集。,CS/SGU,概念结构设计,二、基本元素 实体联系模型反映的是现实世界中的事物及其相互联系。,图书,作者,写作,出版社,类别,页数,ISBN*,书名,姓名,出生地,身份证号*,定稿时间,价格,m,n,CS/SGU,1、实体(Entity)描述客

20、观事物的概念,实体名称,表示方法:,概念结构设计,CS/SGU,2、属性 属性指实体具有的某种特性。,表示方法:,属性,实体名称,属性1,属性2,属性n,概念结构设计,CS/SGU,3、联系 现实世界的事物总是存在着这样或那样的联系,联系,表示方法:,概念结构设计,CS/SGU,设A,B为两个包含若干个体的总体,,1、一对一联系 如果对于A中的一个实体,B中至多有一个实体与其发生联系,反之,B中的每一实体至多对应A中一个实体,则称A与B是一对一联系。,系,系主任,任职,1,1,概念结构设计,CS/SGU,2、一对多联系 如果对于A中的每一实体,实体B中有一个以上实体与之发生联系,反之,B中的每

21、一实体至多只能对应于A中的一个实体,则称A与B是一对多联系。,教研室,教师,联系,1,n,概念结构设计,CS/SGU,3、多对多联系 如果A中至少有一实体对应于B中一个以上实体,反之,B中也至少有一个实体对应于A中一个以上实体,则称A与B为多对多联系。,概念结构设计,CS/SGU,三、ER图绘制,图书,作者,写作,出版社,类别,页数,ISBN*,书名,姓名,出生地,身份证号*,定稿时间,价格,1、利用分类、聚集、概括等方法抽象出实体,并一一命名。,2、描述实体之间的联系,3、实体属性和联系属性、类型的说明,m,n,概念结构设计,CS/SGU,四、构造E-R图应注意的问题:,1、注意标识实体属性

22、中的关键字;,2、如果所处理的对象是一个比较大的系统,则应该先画出各个部门的子E-R图,然后再合并同类实体,消除冗余,消除冲突。,3、对于一个特定的应用处理对象,所构造的E-R模型可能不是唯一的。,概念结构设计,CS/SGU,五、局部E-R模型设计数据抽象后得到了实体和属性,实际上实体和属性是相对而言的,往往要根据实际情况进行必要的调整。在调整中要遵循两条原则:实体具有描述信息,而属性没有。即属性必须是不可分的数据项,不能再由另一些属性组成。属性不能与其他实体具有联系,联系只能发生在实体之间。例如:学生是一个实体,学号、姓名、性别、年龄、系别等是学生实体的属性,系别只表示学生属于哪个系,不涉及

23、系的具体情况,换句话说,没有需要进一步描述的特性,即是不可分的数据项,则根据原则可以作为学生实体的属性。但如果考虑一个系的系主任、学生人数、教师人数、办公地点等,则系别应看作一个实体。,概念结构设计,CS/SGU,五、局部E-R模型设计(续)此外,我们可能会遇到这样的情况,同一数据项,可能由于环境和要求的不同,有时作为属性,有时则作为实体,此时必须根据实际情况而定。一般情况下,凡能作为属性对待的,应尽量作为属性,以简化E-R图的处理。下面举例说明局部E-R模型设计。在简单的教务管理系统中,有如下语义约束。一个学生可选修多门课程,一门课程可为多个学生选修,因此学生和课程是多对多的联系;一个教师可

24、讲授多门课程,一门课程可为多个教师讲授,因此教师和课程也是多对多的联系;一个系可有多个教师,一个教师只能属于一个系,因此系和教师是一对多的联系,同样系和学生也是一对多的联系。,概念结构设计,CS/SGU,学生选课局部图,概念结构设计,CS/SGU,教师任课局部图,概念结构设计,CS/SGU,六、全局E-R模型设计局部E-R模型设计完成之后,下一步就是集成各局部E-R模型,形成全局E-R模型,即视图的集成。视图集成的方法有两种:多元集成法,一次性将多个局部E-R图合并为一个全局E-R图。二元集成法,首先集成两个重要的局部视图,以后用累加的方法逐步将一个新的视图集成进来。在实际应用中,可以根据系统

25、复杂性选择这两种方案。一般采用逐步集成的方法,如果局部视图比较简单,可以采用多元集成法。一般情况下,采用二元集成法,即每次只综合两个视图,这样可降低难度。无论使用哪一种方法,视图集成均分成两个步骤。合并,消除各局部E-R图之间的冲突,生成初步E-R图。优化,消除不必要的冗余,生成基本E-R图。,概念结构设计,CS/SGU,视图集成,概念结构设计,CS/SGU,(1)合并局部E-R图,生成初步E-R图这个步骤将所有的局部E-R图综合成全局概念结构。全局概念结构它不仅要支持所有的局部E-R模型,而且必须合理地表示一个完整、一致的数据库概念结构。由于各个局部应用不同,通常由不同的设计人员进行局部E-

26、R图设计,因此,各局部E-R图不可避免地会有许多不一致的的地方,我们称之为冲突。合并局部E-R图时并不能简单地将各个E-R图画到一起,而必须消除各个局部E-R图中的不一致,使合并后的全局概念结构不仅支持所有的局部E-R模型,而且必须是一个能为全系统中所有用户共同理解和接受的完整的概念模型。合并局部E-R图的关键就是合理消除各局部E-R图中的冲突。,概念结构设计,CS/SGU,E-R图中的冲突有三种:属性冲突、命名冲突和结构冲突。属性冲突属性冲突又分为属性值域冲突和属性的取值单位冲突。属性冲突属于用户业务上的约定,必须与用户协商后解决。命名冲突命名不一致可能发生在实体名、属性名或联系名之间,其中

27、属性的命名冲突更为常见。一般表现为同名异义或异名同义(实体、属性、联系名)。命名冲突的解决方法同属性冲突,需要与各部门协商、讨论后加以解决。,概念结构设计,CS/SGU,结构冲突a.同一对象在不同应用中有不同的抽象,可能为实体,也可能为属性。例如,教师的职称在某一局部应用中被当作实体,而在另一局部应用中被当作属性。这类冲突在解决时,就是使同一对象在不同应用中具有相同的抽象,或把实体转换为属性,或把属性转换为实体。b.同一实体在不同应用中属性组成不同,可能是属性个数或属性次序不同。解决办法是,合并后实体的属性组成为各局部E-R图中的同名实体属性的并集,然后再适当调整属性的次序。c.同一联系在不同

28、应用中呈现不同的类型。比如E1与E2在某一应用中可能是一对一联系,而在另一应用中可能是一对多或多对多联系,也可能是在E1、E2、E3三者之间有联系。这种情况应该根据应用的语义对实体联系的类型进行综合或调整。,概念结构设计,CS/SGU,下面以教务管理系统中的两个局部E-R图为例。,首先,这两个局部E-R图中存在着命名冲突,学生选课局部图中的实体“系”与教师任课局部图中的实体“单位”,都是指“系”,即所谓的异名同义,合并后统一改为“系”,这样属性“名称”和“单位”即可统一为“系名”。其次,还存在着结构冲突,实体“系”和实体“课程”在两个不同应用中的属性组成不同,合并后这两个实体的属性组成为原来局

29、部E-R图中的同名实体属性的并集。,概念结构设计,CS/SGU,教务管理系统的初步ER图,概念结构设计,CS/SGU,(2)消除不必要的冗余,生成基本E-R图所谓冗余,在这里指冗余的数据和实体之间冗余的联系。冗余的数据是指可由基本的数据导出的数据,冗余的联系是由其他的联系导出的联系。在上面消除冲突合并后得到的初步ER图中,可能存在冗余的数据或冗余的联系。冗余的存在容易破坏数据库的完整性,给数据库的维护增加困难,应该消除。我们把消除了冗余的初步E-R图称为基本E-R图。通常采用分析的方法消除冗余。数据字典是分析冗余数据的依据,还可以通过数据流图分析出冗余的联系。请同学们自己先分析一下,刚才得到的

30、E-R图中的冗余。,概念结构设计,CS/SGU,消除冗余,概念结构设计,CS/SGU,教务管理系统的基本ER图,概念结构设计,CS/SGU,最终得到的基本E-R模型是企业的概念模型,它代表了用户的数据要求,是沟通“要求”和“设计”的桥梁。它决定数据库的总体逻辑结构,是成功建立数据库的关键。如果设计不好,就不能充分发挥数据库的功能,无法满足用户的处理要求。因此,用户和数据库人员必须对这一模型反复讨论,在用户确认这一模型已正确无误的反映了他们的要求后,才能进入下一阶段的设计工作。,概念结构设计,CS/SGU,1 数据库设计概述,2 概念结构设计(ER图),3 逻辑结构设计(关系模式),4 物理结构

31、设计,CS/SGU,逻辑结构设计,回顾,实体 实体集合及 实体联系 相关属性集合,加工、转换,数 文件据 记录库 相关数据项集合,数据世界,DBMS的数据模型,信息世界,E-R模型,设计逻辑结构时一般要分两步进行:(1)将概念结构转换为关系模型;(2)对关系数据模型进行优化。,CS/SGU,eg.库存(仓库号,器件号,数量)仓库(仓库号,城市,面积),关系模式 对关系的描述,用关系名(属性1,属性2,属性n)来表示。,逻辑结构设计,CS/SGU,转换过程示意图,E-R图,关系模型,逻辑结构设计,CS/SGU,转换原则概念设计中得到的E-R图是由实体、属性和联系组成的,而关系数据库逻辑设计的结果

32、是一组关系模式的集合。所以将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。在转换中要遵循以下原则:(1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。(2)一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。该关系的键有三种情况:如果联系为1:1,则每个实体的键都是关系的候选键;如果联系为1:n,则n端实体的键是关系的键;如果联系为n:m,则各实体键的组合是关系的键。,逻辑结构设计,CS/SGU,转换举例一,厂长号*,姓名,年龄,厂长,厂号*,厂名,地点,工厂,管理,1,1,厂长(厂长号,姓名,年龄),工厂(

33、厂号,厂名,地点),管理(厂号,厂长号),思考:还可以怎么转换?,逻辑结构设计,CS/SGU,转换举例二,仓库号*,地点,面积,仓库,货号*,品名,价格,产品,存放,1,n,仓库(仓库号,地点,面积),产品(货号,品名,价格),数量,存放(仓库号,货号,数量),逻辑结构设计,CS/SGU,转换举例三,学号*,姓名,年龄,学生,课程号*,课程名,学时数,课程,学习,m,n,学生(学号,姓名,年龄),课程(课程号,课程名,学时数),成绩,学习(学号,课程号,成绩),逻辑结构设计,CS/SGU,关系模式规范化应用规范化理论对上述产生的关系的逻辑模式进行初步优化,以减少乃至消除关系模式中存在的各种异常

34、,改善完整性、一致性和存储效率。规范化理论是数据库逻辑设计的指南和工具,规范化过程可分为两个步骤:确定规范式级别,实施规范化处理。1确定范式级别考查关系模式的函数依赖关系,确定范式等级,逐一分析各关系模式,考查是否存在部分函数依赖,传递函数依赖等,确定它们分别属于第几范式。2实施规范化处理确定范式级别后,利用第6章的规范化理论,逐一考察各个关系模式,根据应用要求,判断它们是否满足规范要求,可用已经介绍过的规范化方法和理论将关系模式规范化。,逻辑结构设计,CS/SGU,1 数据库设计概述,2 概念结构设计(ER图),3 逻辑结构设计(关系模式),4 物理结构设计,CS/SGU,物理结构设计是为数

35、据模型在设备上选定合适的存储结构和存取方法,以获得数据库的最佳存取效率。数据库的物理结构设计就是对一个给定的逻辑结构选取一个最适合应用环境的物理结构的过程。,物理结构设计,CS/SGU,1、确定库文件的组织形式 如选用顺序文件组织形式、索引文件组织形式等。2、存取路径的选择 对同一个数据提供多条存取路径。物理设计要确定应该建立哪些存取路径。,3、确定数据存放位置 为了提高系统性能,数据应该根据应用情况将易变部分和稳定部分、经常存取部分和存取频率较低的部分分开存放。例如将易变的、存取频繁的数据存放在高速存储器上;稳定的、存取频度小的数据存放在低速存储器上。,物理结构设计,CS/SGU,常涉及到的

36、设计环节(1)聚簇(Cluster)聚簇就是为了提高查询速度,把在一个(或一组)属性上具有相同值的元组集中地存放在一个物理块中。如果存放不下,可以存放在相邻的物理块中。其中,这个(或这组)属性称为聚簇码。为什么要使用聚簇呢?聚簇有两个作用:使用聚簇以后,聚簇码相同的元组集中在一起了,因而聚簇值不必在每个元组中重复存储,只要在一组中存储一次即可,因此可以节省存储空间。聚簇功能可以大大提高按聚簇码进行查询的效率。,物理结构设计,CS/SGU,(2)索引存储记录是属性值的集合,主关系键可以惟一确定一个记录,而其他属性的一个具体值不能惟一确定是哪个记录。在主关系键上应该建立惟一索引,这样不但可以提高查

37、询速度,还能避免关系键重复值的录入,确保了数据的完整性。在数据库中,用户访问的最小单位是属性。如果对某些非主属性的检索很频繁,可以考虑建立这些属性的索引文件。索引文件对存储记录重新进行内部链接,从逻辑上改变了记录的存储位置,从而改变了访问数据的入口点。关系中数据越多索引的优越性也就越明显。建立多个索引文件可以缩短存取时间,但是增加了索引文件所占用的存储空间以及维护的开销。因此,应该根据实际需要综合考虑。,返回本节,物理结构设计,CS/SGU,数据库设计过程,概念结构设计,CS/SGU,系统实现部分,1编写系统设计说明书,2 界面代码设计,CS/SGU,系统设计说明书,信息系统设计说明书1.引言

38、1.1 编写目的1.2 背景1.3 参考资料2.信息系统结构 2.1 概述2.2 信息系统拓扑结构2.3 信息系统计算模式2.4 信息系统软件结构3.详细设计 3.1 概述 3.2 用例设计 3.2.1 用例1设计 3.2.2 用例2设计 3.3 类设计 3.3.1 类1设计 3.3.2 类2设计 3.3.n 类关系4.界面设计 4.1 概述 4.2 输入设计 4.3 输出设计 4.5 屏幕界面设计5.数据库设计 5.1 概述 5.2 概念设计 5.3 逻辑设计 5.4 物理设计6.系统实现计划,CS/SGU,界面设计,用户界面设计的原则 用户界面设计应该遵循合理、有效、安全的原则。合理性指的

39、是在用户界面设计过程中应该尽量做到全面、系统、客观、美观和协调。在用户界面设计过程中,应该以用户为中心,尽量考虑用户的需要、特点和习惯;界面设计策略和方案要符合信息系统总体设计目标;界面设计技术、设计方法和输入输出设备的选择要客观合理;界面布局、结构、层次、界面控件的设计应该做到必要、美观、合理。,返回本节,CS/SGU,第三节 实例分析,数据库课程设计实例,返回首页,CS/SGU,第四节 课程设计安排及题目分配,一、设计要求:1、本次课程设计为16学时,时间为2012/2013第二学期1-8周。具体时间和地点安排如下:2、第4周开始做,第8周收课程设计报告。但是每位同学要在过程中提交阶段性成

40、果,以备作为平时成绩参考,每个阶段通过审核后,方可开展下一阶段的设计。,CS/SGU,第四节 课程设计安排及题目分配,二、成绩评定1、平时表现占总成绩40:迟到每次扣5分;未准时完成阶段性任务扣10分;无故旷课每次扣20 分,无故旷课累计两次者总成绩为不及格。2、课程设计报告和软件运行情况占总成绩60。:用专用课程设计报告纸书写按格式规范撰写,并在规定时间内上交和接受检查。,CS/SGU,第四节 课程设计安排及题目分配,三、本课题设计的基本要求:(1)必须提交系统分析报告,包括系统分析、系统的功能模块设计、数据库的数据字典,数据库的概念结构(ER图),数据库中的表、视图(如果使用)、存储过程(

41、如果使用)的结构和定义(可以用SQL脚本提供);(2)程序设计的报告:包括程序的运行环境、开发环境、程序的详细设计(包括模块之间的关系,模块的功能、主要功能实现的程序段)(3)系统的源程序,包括数据库脚本程序。注:开发工具不限,可自己选择VB、PB、Delphi、VC、ASP都可以。,CS/SGU,第四节 课程设计安排及题目分配,四、设计内容及选题 1、题目按选课序号顺序分配,不得更改。2、具体题目(先查找资料,然后指导教师指导。),CS/SGU,第四节 课程设计安排及题目分配,五、基本要求 能反映完成了上述设计内容要求。要求撰写不少于4000个文字(15页)的文档。文档中至少要包括:数据流图

42、、数据字典、E-R图、数据库表的详细说明、系统功能结构图、主要功能模块说明。课程设计说明书一律用碳素墨水书写,其中用户界面设计可以附界面的计算机截图或手工绘图。,CS/SGU,第四节 课程设计安排及题目分配,六、文档参考格式 封面 前言 目录 课程设计任务书(教师签名)正文(分章、层次等,每一章从新一页开始)概述 包括项目背景、编写目的、软件定义、开发环境等内容。需求分析 问题陈述、需完成的功能。以数据流图和数据字典表达。概念结构设计 将上述需求分析的成果抽象为ER模型图 逻辑结构设计 把ER模型图转换为关系表;描述每一个基本表关系。并进行 规范化;定义视图、定义索引、主关键字、定义权限。软件

43、功能设计 画出系统功能结构图,描述每一个功能所完成的任务。代码设计和界面设计 给出主要功能的代码并有适当的说明;界面设计要合理,给出主要界面。小结 参考文献 附录:课程设计程序核心代码。,CS/SGU,第四节 课程设计安排及题目分配,七、评分标准:1、优遵守课程设计的相关规章制度,正确地理解题意,完成了课程设计要求的所有内容。文档详细规范,数据库设计结果合理可行,有良好的编程规范和适当的注释,有正确的运行结果,人机接口界面好。2、良遵守课程设计的相关规章制度,较好地理解题意,较好地完成了课程设计要求的所有内容。文档较为详细规范,数据库设计结果合理可行,功能较为完善,有较为正确的运行结果,人机接

44、口界面较好。3、中遵守课程设计的相关规章制度,基本理解题意,基本完成课程设计要求的大部分内容。文档基本规范,数据库设计结果基本合理,功能基本完善,程序基本可运行,有基本的人机接口界面。4、及格基本遵守课程设计的相关规章制度,完成课程设计要求的基本内容,有基本功能文档。5、不及格不遵守课程设计的相关规章制度;未按时完成课程设计要求的基本内容 抄袭他人课程设计说明书(雷同者全部为不及格)。,CS/SGU,第四节 课程设计安排及题目分配,八、其他注意事项 1、上课、上机不能迟到、早退。2、课程设计报告封面不要提前随意填写。格式规范 3、除上课之外,其他时间做课程设计,指导教师随时考 勤。4、用铅笔在

45、报告的最后一页留下你的联系电话。5、其他未尽事宜,由指导教师自主安排。,CS/SGU,数据库课程设计题目16个 经典实例,1.机票预定信息系统 2.长途汽车信息管理系统 3.人事信息管理系统 4.超市会员管理系统 5.客房管理系统 6.药品存销信息管理系统 7.学生选课管理信息系统 8.图书管理系统,9.学生成绩管理系统 10.网上书店管理信息 11.教室管理信息系统 12论坛管理信息系统 13.职工考勤管理信息系统 14.个人信息管理系统 15.办公室日常管理信息系统 16.轿车销售信息管理系统,本教材还有:1.进销存管理系统 2.在线考试系统3.各户资源管理系统 4.工资管理系统,设计选题范围:推荐的选题(上述蓝色的)、同学自选题目,CS/SGU,结束,谢谢!,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号