欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    二章数据库应用系统设计概述.ppt

    • 资源ID:2552129       资源大小:415.51KB        全文页数:64页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    二章数据库应用系统设计概述.ppt

    2019/4/7,1,主讲人 徐万万,数据库及其应用系统开发,Access 2003,张迎新 主编,2019/4/7,2,第二章,数据库应用系统 设计概述,2019/4/7,3,2.1 数据库应用系统的开发 2.2 数据库的设计 2.3 规范化理论的基本概念 2.4 规范化设计 2.5 “教学管理系统”的开发 2.6 Access2003开发工具,2019/4/7,4,2.1 数据库应用系统的开发,数据库应用系统的开发方法 结构化生命周期法(开发周期较长) 原型法(以用户需求为准) 面向对象方法(应变能力较强),2019/4/7,5,结构化生命周期法 基本思想: 把系统的开发看作工程项目。 需要经过系统规划、系统分析、系统设计、系统实施、系统运行和维护五个阶段。,2019/4/7,6,结构化生命周期法的开发步骤,一、系统规划阶段 在系统正式开发之前,必须进行系统调查和可行性分析。 本阶段的主要任务是根据用户的系统开发请求,初步调查,明确问题,进行可行性分析研究。,2019/4/7,7,二、系统分析阶段,系统分析阶段可以说是系统开发中最重要的一步。 主要任务: 需求分析 信息采集 编写需求说明书,2019/4/7,8,三、系统设计阶段 如果系统分析阶段的任务是解决“干什么”的问题,那么系统设计阶段的任务是确定“怎么干”。 系统设计工作由总体设计和详细设计两部分组成。,2019/4/7,9,四、系统实施阶段 第一步:选择合适的软件开发工具。 第二步:使用所选择的开发工具,建立数据库,输入原始数据,编写和调试各个模块的应用程序代码。 第三步:完成各个子系统和模块之间的联合调试和测试。,2019/4/7,10,五、系统运行和维护阶段 系统正式交给用户投入使用,便进入系统的运行和维护阶段。 用户在使用过程中,可能会发现很多问题,或提出新的要求,开发者应不断对系统进行修改、维护或调整,直至系统生命周期的结束。,2019/4/7,11,1、概念模型设计 最常用的工具是E-R图。步骤如下: (1)确定实体; (2)确定实体的属性; (3)确定实体的主键; (4)确定实体间的联系类型; (5)画出E-R图。,2.2 数据库的设计,2019/4/7,12,2、逻辑数据库设计 任务是将概念模型转换成数据库管理系统所支持的数据模型。 如果是关系型数据库管理系统,就应将概念模型转换为关系模型,即将E-R图中的实体和联系转换为关系模式(二维表)。,2019/4/7,13,2、逻辑数据库设计 关系模式(二维表) 学院(学院代码、学院名称、院长姓名、学院地址、学院电话、学院简介) 系部(系部编号、学院代码、系部名称、主任、地址、电话、专业介绍) 教师(教师编号、系部编号、姓名、性别、学历、职称、办公电话、手机、E-mail、照片) 班级(班级编号、班级名称、班长、联系电话、奖励处罚、系部编号) 学生(学号、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、班级编号),2019/4/7,14,3、规范化理论的应用 在上一步的逻辑数据库设计中,形成了一组关系模式。如果关系模式没有设计好,就会出现数据冗余、数据更新异常、数据删除异常、数据插入异常等问题。 规范化理论的目的就是设计好的关系模式。,2019/4/7,15,4、物理数据库设计 任务是设计数据库的存储结构和物理实现方法。 例如:字段的存储类型及属性,2019/4/7,16,1函数依赖 函数依赖是属性之间的一种联系。 如果一个关系模式设计得不好,说明在它的某些属性之间存在“不良”的函数依赖。,2.3 规范化理论的基本概念,2019/4/7,17,设在关系R中,X、Y为R的两个属性子集,如果每个X值只有一个Y值与之对应,则称属性Y函数依赖于属性X;或称属性X惟一确定属性Y,记作XY。例如:学号确定姓名 如果XY,同时Y不包含于X,则称XY是非平凡的函数依赖。(注:本书介绍的是非平凡的函数依赖),2.3 规范化理论的基本概念,2019/4/7,18,2完全函数依赖 设在关系R中,X、Y为R的两个属性子集,若XY,且对于X的任何一个真子集X,都有XY, 则称Y完全函数依赖于X。若X Y,则称:Y部分函数依赖于X。 反例见P27表2-3,2019/4/7,19,3传递函数依赖 设在关系R中,X、Y、Z为R的三个属性子集。若XY,YZ,且X不依赖于Y,则称:Z传递函数依赖于X 。 反例见P28表2-6,2019/4/7,20,1971年IBM公司的科德博士提出了规范化理论,从而提供了判别关系模式优劣的标准。 规范化的基本思想是消除关系模式中的数据冗余。解决数据插入、更新、删除时发生异常现象。这就要求关系数据库设计出来的关系模式要满足规范的模式,即“范式”。,2.4 规范化设计,2019/4/7,21,科德博士为不同程度的规范化设立了不同的标准,称为范式(Normal Form)。 由于规范化的程度不同,就产生了不同的范式。,2.4 规范化设计,2019/4/7,22,数据库的逻辑设计为什么要遵循一定的规范化理论?,例如:要设计教学管理数据库,其关系模式SCD如下: SCD(SNO,SN,AGE,DEPT,MN,CNO,SCORE) 其中SNO表示学号,SN表示学生姓名,AGE表示学生年龄,DEPT表示学生所在系别,MN表示系主任姓名,CNO表示课程号,SCORE表示成绩。,2019/4/7,23,根据实际情况,这些数据有如下语义规定: 1.一个系有若干个学生,但一个学生只属于一个系; 2.一个系只有一名系主任,但一个人可以同时兼几个系的系主任; 3.一个学生可以选修多门功课,每门课程可有若干学生选修; 4.每个学生学习一门课程只有一个成绩。 在这个关系模式中填入一部分具体的数据,可得到SCD关系模式的实例,即一个教学管理数据库,如下表所示。,2019/4/7,24,课程,分数,学号,系别,2019/4/7,25,分析: 从以上关系的数据中可以看出:(SNO,CNO)属性的组合能唯一标识一个元组,所以(SNO,CNO)是该关系模式的主键。 但在进行数据库的操作时,会出现以下几方面的问题:,2019/4/7,26,数据冗余。 每个系名和系主任的名字存储的次数等于该系的学生人数乘以每个学生选修的课程门数,同时学生的姓名、年龄也都要重复存储多次,数据的冗余度很大,浪费了存储空间。,2019/4/7,27,2. 插入异常。 如果某个新系没有招生,则系名和系主任的信息无法插入到数据库中(缺少主键值)。 因为在这个关系模式中,(SNO,CNO)是主键。根据关系的实体完整性约束,主键的值不能为空,而这时没有学生,SNO和CNO均无值,因此不能进行插入操作。,2019/4/7,28,另外,当某个学生尚未选课,即CNO未知,根据实体完整性约束的规定,主键的值不能部分为空,同样不能进行插入操作。,2019/4/7,29,3. 删除异常。 某系学生全部毕业而没有再招生时,删除全部学生的记录则系名、系主任也随之删除。 此时,这个系虽然存在,在数据库中却无法找到该系的信息。,2019/4/7,30,3. 删除异常。 另外,如果某个学生不再选修C1课程,本应该只删去C1,但C1是主键的一部分,为保证实体完整性,必须将整个元组一起删掉。 这样,有关该学生的其它信息也随之丢失。,2019/4/7,31,4. 更新异常。 如果学生改名,则该学生的所有记录都要逐一修改SN; 又如某系更换系主任,则属于该系的学生记录都要修改MN的内容,稍有不慎,就有可能漏改某些记录,这就会造成数据的不一致性,破坏了数据的完整性。,2019/4/7,32,由于存在以上问题,SCD是一个不好的关系模式。产生上述问题的原因,直观地说,是因为关系中“包罗万象”,内容太杂了。 怎样才能得到一个好的关系模式呢?,2019/4/7,33,把关系模式SCD分解为下面三个结构简单的关系模式,如图所示。 学生S(SNO,SN,AGE,DEPT) 选课SC(SNO,CNO,SCORE) 系D(DEPT,MN),2019/4/7,34,S SC,分解后的关系模式,2019/4/7,35,经过上述分析,分解后的关系模式是一个好的关系数据库模式。 好的关系模式应具备以下四个条件: 1. 尽可能少的数据冗余。 2. 没有插入异常。 3. 没有删除异常。 4. 没有更新异常。,2019/4/7,36,按照一定的规范设计关系模式,将结构复杂的关系分解成结构简单的关系,从而把不好的关系数据库模式转变为好的关系数据库模式,这就是关系的规范化。,2019/4/7,37,把关系数据库的规范化要求设立的标准称为范式(Normal Form)。 由于规范化的程度不同,就产生了不同的范式。,范式,2019/4/7,38,范式,满足最基本规范化要求的关系模式叫第一范式 在第一范式中进一步满足一些要求为第二范式 以此类推就产生了第三范式等概念。 每种范式都规定了一些限制约束条件。,2019/4/7,39,第一范式(1NF) 第一范式(First Normal Form)是最基本的规范形式,即关系中每个属性都是不可再分的简单项。 每个规范化的关系都属于1NF,这也是它之所以称为“第一”的原因。,2019/4/7,40,第一范式(1NF) 定义 如果关系模式R,其所有的属性均为简单属性,即每个属性都是不可再分的,则称R属于第一范式,简称1NF,记作R1NF。,2019/4/7,41,只要将所有的属性表示为不可再分的数据项,转化后的关系即符合第一范式。,2019/4/7,42,然而,一个关系模式仅仅属于第一范式是不适用的。 关系模式SCD属于第一范式,但其具有大量的数据冗余,具有插入异常、删除异常、更新异常等弊端。,2019/4/7,43,第二范式(2NF) 定义 如果关系模式R1NF,且每个非主属性都完全函数依赖于任意一个侯选关键字,则称R属于第二范式,简称2NF,记作R2NF。,2019/4/7,44,其原因是:非主属性“学分”仅仅依赖于“课程号”,也就是说只是部分依赖于主关键字(学号,课程号),而不是完全依赖。,2019/4/7,45,2NF的关系模式解决了1NF中存在的一些问题,规范化的程度前进了一步,但2NF的关系模式在进行数据操作时,仍然存在着一些问题。,2019/4/7,46,第三范式(3NF) 定义 如果关系模式R2NF,且每个非主属性都不传递依赖于R的任何候选关键字,则称R属于第三范式,简称3NF,记作R3NF 。 如果 R3NF,则R也是2NF。 反之 R2NF,则R不一定是3NF。,2019/4/7,47,在该表中,关键字是学号,由于是单个关键字,没有部分依赖的问题,这个关系肯定属于第二范式。 带来问题的原因是:关系中存在传递依赖。“院系名称”、“院系地址”两个属性依赖于“院系编号”,而“院系编号”又依赖于“学号”,因此,“院系名称”、“院系地址”两个属性通过“院系编号”依赖于“学号”,这种现象称为传递依赖。,2019/4/7,48,解决办法是将R分解为以下两个关系:,2019/4/7,49,BCNF(第四范式) 定义:如果关系模式的所有属性(包括主属性和非主属性)都不传递依赖于R的任何侯选关键字,则称R属于BCNF,记作RBCNF。,如果R BCNF ,则R也是3NF 。,2019/4/7,50,关系模式规范化的目的和原则 一个关系的分量都是不可再分的数据项,就可称作规范化的关系,但这只是最基本的规范化。 这样的关系模式是合法的。 但有些关系模式存在插入、删除、修改异常、数据冗余等弊病。 规范化的目的就是使结构合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新。,2019/4/7,51,规范化的基本原则就是遵从概念单一化“一事一地”的原则,即一个关系只描述一个实体或者实体间的联系。 若多于一个实体,就把它“分离”出来。 因此,所谓规范化,实质上是概念的单一化,即一个关系表示一个实体。,2019/4/7,52,注意1 在数据库设计过程中,一般说来,1NF很容易遵守,完全遵守3NF的人很少。从关系模型的角度来看,满足3NF最符合标准,这样的设计容易维护。而BCNF的范式出现机会较少,而且会破坏完整性,可以在设计时不考虑它。,2019/4/7,53,注意2 规范化的优点是减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度,但在数据查询方面,需要进行关系模式之间的连接操作,因而影响查询的速度。因此,并不一定要求全部模式都达到BCNF,有时故意保留部分冗余可能更方便地查询数据。,2019/4/7,54,2.5 “教学管理系统”的开发,2.5.1 系统规划阶段 某大学是一所多科性大学,学校设有经济学院、化学与环境工程学院、机械自动化学院、信息工程学院、计算机学院、商学院、会计学院等11个学院。学校现有教职工近1400人,学生18000多人。,2019/4/7,55,1提出开发请求 随着信息量的增加,教学管理工作越来越繁杂,手工管理的弊端日益显露。 为了提高教学管理的质量和工作效率,为了及时提供信息,实现教学管理的信息化,学校委托某软件开发公司开发“教学管理系统”。,2019/4/7,56,2可行性分析研究 可行性分析包括两部分内容:分析建立新的管理信息系统的必要性和可能性。可能性主要包括经济可行性、技术可行性和社会可行性。,2019/4/7,57,2.5.2 系统分析阶段(P31-32) 1学校机构组织 2教学管理工作流程 3教学管理 数据流程图,2019/4/7,58,2.5.3 系统设计阶段 1功能模块设计,2019/4/7,59,2数据库设计, 确定实体 确定实体的属性,2019/4/7,60, 确定实体间的联系类型,局部E-R图,2019/4/7,61,整体E-R图,2019/4/7,62,2.6 Access2003开发工具,2.6.1 Access2003开发环境 启动界面 数据库窗口 2.6.2 Access的帮助系统,2019/4/7,63,数据库设计小结,基本步骤: 数据库系统需求分析; 数据需求分析; 设计数据模式(E-R图); 数据模式转化为二维表; 对表和模式进行第一范式规范; 检查是否符合第二范式并修正关系; 用第三范式规范关系; 如果存在组合多值依赖传递关系,还要用第四范式规范关系。,2019/4/7,64,一、选择题 (P40) 二、判断题 (P41) 三、简答题 (P41-2,8),本章作业,

    注意事项

    本文(二章数据库应用系统设计概述.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开