第4章 数据库设计课件.ppt
《第4章 数据库设计课件.ppt》由会员分享,可在线阅读,更多相关《第4章 数据库设计课件.ppt(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章 数据库设计 本本 章章 要要 点点n数据库设计的四个阶段n数据库的概念设计与逻辑设计思考题n4.1 4.1 数据库设计概述数据库设计概述n 数据库设计是建立数据库及其应用系统的技术,是数据库设计是建立数据库及其应用系统的技术,是n信息系统开发和建设中的核心技术。信息系统开发和建设中的核心技术。n 具体说,数据库设计是指对于一个给定的应用环具体说,数据库设计是指对于一个给定的应用环n境,构造最优的数据库模式,建立数据库及其应用系境,构造最优的数据库模式,建立数据库及其应用系n统,使之能够有效地存储数据,满足各种用户的应用需统,使之能够有效地存储数据,满足各种用户的应用需n求求 ( (信息
2、要求和处理要求信息要求和处理要求) )。这个问题是数据库在应用领。这个问题是数据库在应用领n域的主要研究课题。域的主要研究课题。n 在数据库领域内,常常把使用数据库的各类系统统在数据库领域内,常常把使用数据库的各类系统统n称为数据库应用系统。称为数据库应用系统。n 数据库设计是信息系统开发和建设的重要组成部数据库设计是信息系统开发和建设的重要组成部n分。分。n 下面介绍数据库设计的方法、特点和步骤。下面介绍数据库设计的方法、特点和步骤。 n4.1.1 4.1.1 数据库设计的方法数据库设计的方法n1 1、规范设计法、规范设计法n(1 1)比较著名的有新奥尔良)比较著名的有新奥尔良(New Or
3、leans)(New Orleans)方法,它将数方法,它将数据库设计分为四个阶段。据库设计分为四个阶段。n(2 2)S.B.YaoS.B.Yao等又将数据库设计分为五个步骤。等又将数据库设计分为五个步骤。n(3 3)又有)又有I.R.PalmerI.R.Palmer等主张把数据库设计当成一步接一等主张把数据库设计当成一步接一n步的过程,并采用一些辅助手段实现每一过程。步的过程,并采用一些辅助手段实现每一过程。n(4 4)基于)基于E-RE-R模型的数据库设计方法,基于模型的数据库设计方法,基于3NF3NF的设计方的设计方n法,基于抽象语法规范的设计方法等,是在数据库设计的法,基于抽象语法规范
4、的设计方法等,是在数据库设计的n不同阶段上支持实现的具体技术和方法。不同阶段上支持实现的具体技术和方法。n2 2、计算机辅助数据库设计、计算机辅助数据库设计 n(1)Design 2000(1)Design 2000是是OracleOracle公司的数据库设计工具软件。公司的数据库设计工具软件。n(2)Power Designer(2)Power Designer是是SybaseSybase公司的数据库设计工具软公司的数据库设计工具软n件。件。n(3)(3)计算机辅助软件工程(计算机辅助软件工程(CASECASE)则强凋数据库设计和应)则强凋数据库设计和应n用设计的结合用设计的结合, ,按照一
5、定的设计规程,用工程化方法设计按照一定的设计规程,用工程化方法设计n数据库是最实用的方法。数据库是最实用的方法。 4.1.2 4.1.2 数据库设计的特点数据库设计的特点 数据库设计既是一项涉及多学科的综合性技术,又数据库设计既是一项涉及多学科的综合性技术,又是一项庞大的工程项目。其特点之一是:硬件、软件、是一项庞大的工程项目。其特点之一是:硬件、软件、技术与管理的界面的互相结合;其特点之二是:在整个技术与管理的界面的互相结合;其特点之二是:在整个设计过程中,强调结构设计过程中,强调结构( (数据数据) )设计和行为设计和行为( (处理处理) )设计的设计的紧密结合。紧密结合。 图图4 41
6、1 结构和行为设计分离的设计结构和行为设计分离的设计n4.1.3 4.1.3 数据库设计的步骤数据库设计的步骤n 我们按规范设计的方法将数据库设计分为以下六我们按规范设计的方法将数据库设计分为以下六个阶段:个阶段:n 需求分析阶段需求分析阶段 n第第1 1步:了解和分析用户的应用需求(包括数据与处步:了解和分析用户的应用需求(包括数据与处理),进行需求收集和分析。理),进行需求收集和分析。n 概念结构设计阶段概念结构设计阶段n第第2 2步:对用户需求进行综合、归纳与抽象,形成一个步:对用户需求进行综合、归纳与抽象,形成一个独立于具体独立于具体RDBMSRDBMS的概念模型。的概念模型。n 逻辑
7、结构设计阶段逻辑结构设计阶段n第第3 3步:按照一组转换规则,将概念模型转换为某个步:按照一组转换规则,将概念模型转换为某个RDBMSRDBMS支持的关系模型;支持的关系模型;n第第4 4步:根据规范化理论,对关系模型进行优化。若对步:根据规范化理论,对关系模型进行优化。若对逻辑结构设计不满意,则转第逻辑结构设计不满意,则转第3 3步进行。步进行。n 物理结构设计阶段物理结构设计阶段n第第5 5步:为关系模型选取一个最适合应用环境的物理步:为关系模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法);结构(包括存储结构和存取方法);n第第6 6步:对此物理结构进行评价设计和性能预测。若
8、步:对此物理结构进行评价设计和性能预测。若对物理结构设计不满意,则转第对物理结构设计不满意,则转第3 3或第或第5 5步进行。步进行。n 数据库实施阶段数据库实施阶段n第第7 7步:运用步:运用RDBMSRDBMS提供的数据语言及其宿主语言,根提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,并组织数据入库;试应用程序,并组织数据入库;n第第8 8步:系统的试验性运行。若对数据库实施不满意,步:系统的试验性运行。若对数据库实施不满意,则转第则转第5 5步进行。步进行。n 数据库运行和维护阶段数据库运行和维护阶段
9、n第第9 9步:数据库应用系统经过试运行后即可投入正式步:数据库应用系统经过试运行后即可投入正式运行。在数据库系统的运行过程中必须不断地对其进运行。在数据库系统的运行过程中必须不断地对其进行评价、调整与修改。行评价、调整与修改。n4.2 4.2 需求分析需求分析n4.2.1 4.2.1 需求分析的任务和方法需求分析的任务和方法n 需求分析阶段的任务是通过详细调查现实世界要需求分析阶段的任务是通过详细调查现实世界要处理的对象处理的对象( (组织、部门、企业等组织、部门、企业等) ),充分了解原系,充分了解原系统的工作概况,明确用户的各种需求,然后在此基统的工作概况,明确用户的各种需求,然后在此基
10、础上确定新系统的功能。新系统必须充分考虑今后础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅按当前应用需求来设计可能的扩充和改变,不能仅按当前应用需求来设计数据库。数据库。n 调查的重点是调查的重点是“数据数据”和和“处理处理”,通过调查,通过调查要从中获得每个用户对数据库的如下要求:要从中获得每个用户对数据库的如下要求:n 1. 1. 信息要求信息要求n 2 2处理要求处理要求n 3. 3. 安全性和完整性的要求安全性和完整性的要求n 为了很好地完成调查的任务,设计人员必须不为了很好地完成调查的任务,设计人员必须不断地与用户交流,与用户达成共识,以便逐步确定断地与用户交流
11、,与用户达成共识,以便逐步确定用户的实际需求,然后分析与表达这些需求。用户的实际需求,然后分析与表达这些需求。 n n4.2.2 4.2.2 数据字典数据字典n 数据字典数据字典(Data Dictionary,简称,简称 DD)则是则是对系对系n统中数据的详尽描述,是各类数据属性的清单。对统中数据的详尽描述,是各类数据属性的清单。对数据数据n库设计来讲,数据字典是进行详细的数据收集和数库设计来讲,数据字典是进行详细的数据收集和数据分据分n析所获得的主要结果。析所获得的主要结果。n 数据字典是各类数据描述的集合,它通常包括数据字典是各类数据描述的集合,它通常包括以下以下n五个部分:五个部分:n
12、 数据项,是数据的最小单位。数据项,是数据的最小单位。n 数据结构,是若干数据项有意义的集合。数据结构,是若干数据项有意义的集合。n 数据流,可以是数据项,也可以是数据结构。数据流,可以是数据项,也可以是数据结构。表示某一处理过程的输入或输出。表示某一处理过程的输入或输出。n 数据存储,处理过程中存取的数据常常是数据存储,处理过程中存取的数据常常是手工凭证、手工文档或计算机文件。手工凭证、手工文档或计算机文件。n 处理过程。处理过程。n4.2.3 4.2.3 数据流图数据流图n 如何分析和表达用户的需求,这是一个重要的问如何分析和表达用户的需求,这是一个重要的问n题。在众多的分析方法中,结构化
13、分析题。在众多的分析方法中,结构化分析(Structured(Structuredn Analysis, Analysis,简称简称 SASA方法方法) )是一个简单实用的方法。是一个简单实用的方法。n SASA方法用自顶向下、逐层分解的方式分析系统。方法用自顶向下、逐层分解的方式分析系统。n用数据流图,数据字典描述系统。任何一个系统都可用数据流图,数据字典描述系统。任何一个系统都可以以n抽象为如图抽象为如图4 42 2所示的情况。所示的情况。n 图图4 42 2 系统高层抽象图系统高层抽象图n 数据流图表达了数据和处理过程的关系。数据流图表达了数据和处理过程的关系。 n 最后要指出两点:最后
14、要指出两点:n 1 1、需求分析阶段一个重要而困难的任务是收集将来、需求分析阶段一个重要而困难的任务是收集将来n应用所涉及的数据。若设计人员仅按当前应用来设计数应用所涉及的数据。若设计人员仅按当前应用来设计数n据库,以后再想加入新的实体,新的数据项和实体间新据库,以后再想加入新的实体,新的数据项和实体间新n的联系就会十分困难。新数据的加入必定会影响数据库的联系就会十分困难。新数据的加入必定会影响数据库n的概念结构、逻辑结构和物理结构,因此设计人员应充的概念结构、逻辑结构和物理结构,因此设计人员应充n分考虑到可能的扩充和改变,使设计易于更动。分考虑到可能的扩充和改变,使设计易于更动。n 2 2、
15、必须强调用户的参与,这是数据库应用系统设计、必须强调用户的参与,这是数据库应用系统设计n的特点。在数据分析阶段,任何调查研究没有用户的积的特点。在数据分析阶段,任何调查研究没有用户的积n极参加是寸步难行的。设计人员应该和用户取得共同的极参加是寸步难行的。设计人员应该和用户取得共同的n语言,帮助不熟悉计算机的用户建立数据库环境下的共语言,帮助不熟悉计算机的用户建立数据库环境下的共n同概念,并对设计工作的最后结果承担共同的责任。同概念,并对设计工作的最后结果承担共同的责任。n4.3 4.3 概念结构设计概念结构设计 n 概念结构独立于数据库逻辑结构,独立于支持数概念结构独立于数据库逻辑结构,独立于
16、支持数n据库的据库的DBMSDBMS,其主要特点是:,其主要特点是:n1 1能充分地反映现实世界,包括实体和实体之间的联能充分地反映现实世界,包括实体和实体之间的联n系,能满足用户对数据处理的要求,是现实世界的一个系,能满足用户对数据处理的要求,是现实世界的一个n真实模型。真实模型。n2. 2. 易于理解。从而可以和不熟悉计算机的用户交换意易于理解。从而可以和不熟悉计算机的用户交换意n见,用户的积极参与是数据库设计成功与否的关键。见,用户的积极参与是数据库设计成功与否的关键。n3. 3. 易于更动。当现实世界改变时容易修改和扩充。易于更动。当现实世界改变时容易修改和扩充。n4. 4. 易于向关
17、系、网状或层次等各种数据模型转换。易于向关系、网状或层次等各种数据模型转换。n 概念结构是各种数据模型的共同基础,它比数据模概念结构是各种数据模型的共同基础,它比数据模n型更独立于机器、更抽象,从而更加稳定。型更独立于机器、更抽象,从而更加稳定。 n4.3.1 4.3.1 概念结构设计的方法与步骤概念结构设计的方法与步骤n 设计概念结构的方法有四种:设计概念结构的方法有四种:n 自顶向下:首先定义全局概念结构的框架,然后自顶向下:首先定义全局概念结构的框架,然后n逐步细化。逐步细化。n 自底向上:首先定义各局部应用的概念结构,然自底向上:首先定义各局部应用的概念结构,然n后将它们集成,得到全局
18、概念结构。后将它们集成,得到全局概念结构。n 由里向外由里向外: : 首先定义最重要的核心概念结构,然首先定义最重要的核心概念结构,然n后向外扩充,生成其他概念结构。后向外扩充,生成其他概念结构。n 混合策略混合策略: : 自顶向下和自底向上相结合的方法,自顶向下和自底向上相结合的方法,n用自顶向下策略设计一个全局概念结构的框架,以它用自顶向下策略设计一个全局概念结构的框架,以它n为骨架集成由自底向上策略中设计的各局部概念结构。为骨架集成由自底向上策略中设计的各局部概念结构。 n 现介绍自底向上设计概念结构的方法。按照这种方现介绍自底向上设计概念结构的方法。按照这种方n法,概念结构的设计可按下
19、面步骤进行,见图法,概念结构的设计可按下面步骤进行,见图4 43 3所示。所示。n n 图图4 43 3 概念结构设计步骤概念结构设计步骤 n4.3.2 4.3.2 数据抽象与局部视图设计数据抽象与局部视图设计n1 1、数据抽象、数据抽象n E-RE-R模型是对现实世界的一种抽象。所谓抽象是对实模型是对现实世界的一种抽象。所谓抽象是对实n际的人、物、事和概念的进行人为处理,抽取人们关心际的人、物、事和概念的进行人为处理,抽取人们关心n的共同特性,忽略非本质的细节,并把这些特性用各种的共同特性,忽略非本质的细节,并把这些特性用各种n概念精确地加以描述,这些概念组成了某种模型。一般概念精确地加以描
20、述,这些概念组成了某种模型。一般n有如下三种抽象:有如下三种抽象:n(1 1)分类)分类(Classification)(Classification)n 定义某一类概念作为现实世界中一组对象的类型。定义某一类概念作为现实世界中一组对象的类型。n这些对象具有某些共同的特性和行为,它抽象了对象值这些对象具有某些共同的特性和行为,它抽象了对象值n和型之间的和型之间的“is member of”is member of”的语义,在的语义,在E-RE-R模型中,实模型中,实n体型就是这种抽象,如图体型就是这种抽象,如图6.46.4所示。所示。 n n n n 图图4 44 4 分类分类 n(2 2)聚
21、集)聚集(Aggregation) (Aggregation) n 定义某一类型的组成成分。它抽象了对象内部类型定义某一类型的组成成分。它抽象了对象内部类型n和成分之间和成分之间“is part of”is part of”的语义,在的语义,在 E-RE-R模型中,若模型中,若n干属性的聚集所组成的实体型就是这种抽象,如图干属性的聚集所组成的实体型就是这种抽象,如图4 45 5所所n示。示。n 图图4 45 5 聚集聚集 n(3 3)概括)概括(Generalization)(Generalization)n 定义类型之间的一种子集联系。它抽象了类型之间定义类型之间的一种子集联系。它抽象了类型
22、之间n的的“is subset of”is subset of”的语义。例如学生是一个实体型,的语义。例如学生是一个实体型,n本科生、研究生也是实体型。本科生、研究生均是学生本科生、研究生也是实体型。本科生、研究生均是学生n的子集。把学生称为超类的子集。把学生称为超类( (SuperclassSuperclass) ),本科生、研究,本科生、研究n生称为学生的子类生称为学生的子类(Subclass)(Subclass)。n 图图4 46 6 概括概括n2 2、局部视图设计、局部视图设计n 概念结构设计的第一步就是利用上面介绍的抽象机概念结构设计的第一步就是利用上面介绍的抽象机n制对需求分析阶段
23、收集到的数据进行分类、组织制对需求分析阶段收集到的数据进行分类、组织( (聚聚n集集) ),形成实体、实体的属性,标识实体的码,确定实体,形成实体、实体的属性,标识实体的码,确定实体n之间的联系类型之间的联系类型(1:1(1:1,1:n1:n,n:mn:m) ),设计局部视图(也,设计局部视图(也n称分称分E-RE-R图)。具体做法是:图)。具体做法是:n(1 1) 选择局部应用选择局部应用n 图图4 47 7 设计分设计分E-RE-R图的出发点图的出发点n(2 2)逐一设计分)逐一设计分 E-RE-R图图n 每个局部应用对应一组数据流图,局部应用涉及的每个局部应用对应一组数据流图,局部应用涉
24、及的n数据已收集在数据字典中,将这些数据从数据字典中抽数据已收集在数据字典中,将这些数据从数据字典中抽n取出来,参照数据流图,标定该应用中的实体、属性和取出来,参照数据流图,标定该应用中的实体、属性和n实体之间的联系及其类型。实体之间的联系及其类型。n 在给定的应用环境中,能够作为属性对待的,应尽在给定的应用环境中,能够作为属性对待的,应尽n量作为属性对待,目的在于简化量作为属性对待,目的在于简化 E-RE-R图的处置。在实体图的处置。在实体n和属性的调整中,要遵循的二条基本准则是:和属性的调整中,要遵循的二条基本准则是:n 作为作为“属性属性”,不能再具有需要描述的性质。即,不能再具有需要描
25、述的性质。即n属性不能是另一些属性的聚集。属性不能是另一些属性的聚集。n 属性不能与其他实体具有联系。即属性不能与其他实体具有联系。即 E-RE-R图中的联图中的联n系是实体之间的联系。系是实体之间的联系。n 符合上述两条的符合上述两条的“事物事物”一般作为属性来对待,否一般作为属性来对待,否n则作为实体对待。则作为实体对待。n 请参见书上的举例。请参见书上的举例。 n例例4 41 1 销售管理子系统分销售管理子系统分E-RE-R图的设计实例图的设计实例n 某工厂开发管理信息系统,经过可行性分析和详细某工厂开发管理信息系统,经过可行性分析和详细n调查,确定了该系统由物资管理、销售管理、劳动人事
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第4章 数据库设计课件 数据库 设计 课件
限制150内