管理系统中计算机的应用课件第六章系统总体设计.ppt
第六章系统总体设计,第六章是关于系统总体设计的基本知识。主要分为系统总体结构设计、数据库设计、数据库的物理实现和代码设计加节的内容。学习本章需要了解系统总体设计的目标任务和工作内容,掌握系统总体设计的结构化方法和主要图形工具,并能够使用Visual foxpro数据库管理系统建立和操纵数据库。本章也是这门课程的重点章节之一。在历年考试中,本章考核的内容以各种题型出现过,其中包括实际应用的部分。当然还包括对Visual foxpro的基本操作。本章在笔试中占515分左右。,系统分析报告经过专家和用户的评审、批准后、开发工作进入系统设计阶段。系统设计阶段的主要目的是确定新系统的物理实施方案。系统设计阶段的主要活动有:(1)系统总体设计(2)系统详细设计(3)编写系统设计报告 本章主要是系统总体设计,第七章讲系统详细设计和编写系统设计报告。,6.l系统总体结构设计,6.1.1系统总体结构设计的任务 系统总体结构设计的任务,是根据系统分析的逻辑模型设计应用软件系统的物理结构。系统物理模型必须符合逻辑模型,能够完成逻辑模型所规定的信息处理功能,这是物理设计的基本要求。,系统应具有可修改性,即易读,易于进行查错、改错、可以根据环境的变化和用户的要求进行各种改变和改进。系统是否具有可修改性,对于系统开发和维护影响极大。据统计,在系统生命周期中各阶段的应用软件费用及人力投入大体分布如下:.系统开发:20.系统维护:80,(2007.4,单选16)在系统生命周期中,系统维护所占用的费用及人力投入比例大约()A.80%B.50%C.35%D.15%(2004.10,单选22)在应用系统总体结构设计中,要着重解决的问题是使系统具有()A可读性 B可重用性C可移植性 D可修改性,6.1.2结构化设计的基本思想,1.结构化设计的要点 系统是否具有可修改性与其结构有着密切的关系。由于波动效应的存在,对某个模块的改动可能要修改整个系统,对于组成部分有复杂联系的大系统,各部分间错综复杂的联系是造成修改工作难于进行的主要原因。因此必须设计一种合理的物理结构,将“波动效应”降到最低限度,才能提高系统的可修改性。1974年美国的w.Stevens等首先提出了“结构化设计”的构想,成为系统设计的基本思想。,“结构化设计”的构想,成为系统设计的基本思想。其要点如下:(1)模块化。这即指将系统按一定规则划分成相对独立的模块。模块是结构化系统的基本元素。(2)由顶向下,逐步求精。系统划分模块的工作应按层次进行:把整个系统看做一个模块,然后把它按功能分解成若干第一层模块,它们各担负一定的局部功能,共同完成整个系统的功能。每个第一层模块又可以进一步分解成为更简单一些的第二层模块,越下层的模块,其功能越具体、越简单。(3)上层模块分解为下层模块,有三种不同的结构形式,即顺序结构、选择结构和循环结构。如课本P158图6-2(07.10,简答39,将上层模块分解为下层模块时,可以有三种不同的结构形式,请写出三种结构形式的名称并画出各自的控制结构图。),(2007.04,单选15)构成结构化系统的基本元素是()A.程序 B.字段 C.模块 D.接口(2006.10,单选16)造成复杂系统修改工作难于进行的主要原因是()A业务流程B层次结构C外部环境D波动效应,(2005.4,单选33,2003.10,单选31)描述系统物理模型的主要工具是()A.N-S图 B.数据流程图C.E-R图 D.控制结构图(2004.4,单选19)结构化设计思想的要点不包括()A.模块化 B.自顶向下,逐步求精 C.自底向上 D.模块分解时只采用顺序、选择和循环三种基本结构方式,控制结构图,控制结构图也称为软件结构图或模块结构图,它表示出一个系统的层次分解关系、模块调用关系、模块之间数据流和控制信息流的传递关系,它是系统物理结构的主要工具。2.控制结构图的基本符号,模块 模块调用关系 数据传递 控制信息 循环调用 选择调用 数据存储,2.控制结构图的基本符号,如图6-2所示,2.控制结构图的规定,模块之间的调用,如课本P159图6-3,按以下规则进行:(1)每个模块有自身的任务,只有接收到上级模块的调用命令时才能执行。(2)模块之间的通信只限于其直接上、下级模块,任何模块不能直接与其他上下级模块或同级模块发生通信联系。(3)若有某模块要与非直接上、下级的其他模块发生通信联系,必须通过其上级模块进行传递。(4)模块调用顺序为自上而下。在控制结构图中,把一个系统分解为若干模块,实质上是把一件比较抽象、其物理内容不大确定的任务,分解为若干件比较具体的、物理内容比较确定的任务。控制结构图既可以反映系统整体结构,又能反映系统的细节,能准确反映各组成部分(各模块)及它们之间的联系。,(2007.10,单选16)以下对模块功能的描述中,正确的是【】A上层模块的任务比较具体 B下层模块的任务比较抽象C非直接上下级模块间不能通信 D模块调用的顺序是自上而下(2004.4,单选25)在规范的控制结构图中,同级模块间的通信()A可直接进行 B可通过这些模块的直接上级模块来直接进行C必须通过这些模块的下级模块来传递 D必须通过这些模块的上级模块进行传递,6.1.3模块分解的规则,1、模块独立性所谓两个模块彼此完全独立,是指其中任一模块在运行时,与另一个模块存在无关。独立性只是一个相对概念。具有独立功能而且和其它模块之间相互作用少的模块,特为独立性高的模块。保证模块独立性高是设计一个系统的关键,它具有以下优点。系统容易开发。系统开发往往由若干人分工合作完成,由于模块之间联系少,接口简单,可以简化合作者之间的协调工作。系统可靠性高。模块之间的相互影响小,当一个模块出错时,产生波动效应的概率低,从而提高了系统的可靠性。系统容易维护:在对一个模块进行修改和维护时,不必担心其他模块内部是否会受到影响。,模块独立程度可以由两个定性指标衡量,即:为保证模块相对独立,应使模块内部自身自身联系紧密,而模块外部互相之间的信息联系要尽可能减少,这是设计物理模型的两项重要原则。(07.4,简答39,简述模块独立性的优点和设计模块的基本原则)。要衡量模块自身是否紧密、与外部的联系是否合理,需引入模块凝聚、模块耦合的概念。,2、模块凝聚,模块凝聚是用以衡量一个模块内部自身功能的内在联系是否紧密的指标,也是衡量模块质量好坏的重要标准。模块按凝聚程度的高低可分为以下五级:偶然凝聚。一个模块内部各组成部分的处理彼此无关,偶然地组合在一起,这是一种组织得最差的模块,凝聚程度最低。逻辑凝聚。一个模块内部各组成部分的处理逻辑相似,但功能彼此不同。这种模块通常包含一个选择控制和若干彼此独立的处理功能。先执行选择功能,再根据选择结果,控制执行不同的处理功能。由于它的逻辑途径比较复杂,修改困难,因此凝聚程度较差。时间凝聚。这是指若干处理由于执行时间彼此有关,集中在一起组成的模块。如初始化模块,各处理内容必须在特定时间内执行,而各处理内容彼此无关,故凝聚程度较差。时间凝聚的模块通常要影响到其他许多模块的运行,因此与其他模块之间联系多,修改比较困难。,数据凝聚模块中某个成分的输出是另一成分的输入。由于这类模块无论数据还是执行顺序,模块中的一部分依赖于另外一部分。这种模块可较明确表述其功能,内部结构较密切,与其他模块联系一般较少,因此具有较好的凝聚性。功能凝聚一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作,紧密联系,不可分割的。这种模块独立强、便于修改。凝聚程度高,是结构化设计模块的理想目标。一个模块的内部凝聚程度,可由P162的图6-5的判定树来表示。,(2007.04,单选19)在比较模块独立性时,凝聚程度最高的是()A.逻辑凝聚B.数据凝聚 C.功能凝聚D.时间凝聚(2004.10,单选20)工资管理模块包含输入工资变动数据,计算工资、汇总工资、输出工资等功能,它的凝聚类型属于()A偶然凝聚 B时间凝聚C数据凝聚 D功能凝聚(2004.4,单选20)如果一个模块执行两个功能,且各功能的处理内容无关,这种模块的凝聚类型不是()A功能凝聚B数据凝聚 C时间凝聚D不能确定,3、模块的耦合,模块间的信息联系方式,称为模块的耦合,它是衡量模块间结构性能的重要指标。耦合有三种类型:数据耦合一个模块访问另一个模块时,彼此之间是通过简单数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的。控制耦合 如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。非法耦合一个模块与另一个模块内部发生联系,即一个模块中的某些内容在另一模块中以某种方式被引用,称为非法耦合。例如,不经过调用关系,直接使用或修改另一模块中的数据,将控制赞扬指向另一模块中的某一标号(节、过程)等。模块间数据耦合是最正常的方式,为保持模块的独立性,模块之间互相传递的数据要尽量少;要努力避免控制耦合,特别是避免自上而下传递控制信号;应消除任何形式的非法耦合。,(2007.10,单选18)在系统总体设计中,模块间的控制耦合应()A.全部采用B.尽可能多用C.尽可能少用D.全部不用,6.1.4控制结构图的绘制,绘制控制结构图的依据是数据流程图。绘制控制结构图,首先是将上层数据流程图映射为上层控制结构图,由顶层数据流程图开始,逐级下推。每一层数据流程图(DFD)中的“处理功能”,映射为相应层次控制结构图中的“模块”;而DFD中流人“处理功能”的数据流映射为输入模块的数据流,DFD中流出“处理功能”的数据流映射成从“模块”中输出的数据流。低层次模块结构的分解,一方面可参照低层次数据流程图的功能结构;另一方面应按照模块分解的规则,将凝聚程度低的、或具有控制耦合、非法耦合的结构进行分解。由于待分解的模块凝聚类型不同,在分解时采用以下两种不同的方式:,1.以转换为中心结构的分解,如果待分解的模块是一个数据凝聚的模块,即内部包含若干顺序执行且对某些数据进行转换处理,称为以转换为中心的结构。这种模块可分解为输入、处理、输出三大部分。,如图6-10 工资管理模块的分解,应用:以转换为中心结构的模块的分解,(2006.10,应用题42)根据数据计算的数据流图,画出以转换为中心的控制结构图。,2.以业务为中心结构的分解,待分解的模块要处理几项逻辑上相似的业务,即它是一个逻辑凝聚的模块。这种模块可以将之分解为一个检查业务类型的模块和一个调度模块,根据不同的业务类型,调度模块调用不同的下层模块,进行不同的处理。以上两种分解方式常常要混合使用,以达到模块凝聚程度高、模块之间独立性强、易于修改的目的。,(2007.10,单选17)需要采用以业务为中心方式分解的模块类型是【】A数据凝聚 B逻辑凝聚 C功能凝聚 D时间凝聚(2005.4,单选38)在模块分解时,如果待分解的是一个逻辑凝聚的模块,它可以分解为一个检查业务类型的模块和一个()A.输入模块 B.输出模块C.调度模块 D.处理模块,6.2数据库设计,6.2.1数据库设计的要求和步骤 1.数据库设计的要求 数据库设计的目标是建立一个合适的数据模型。这个数据模型应当是:(1)满足用户要求:既能合理地组织用户需要的所有数据,又能支持用户对数据的所有处理功能。(2)满足某个数据库管理系统的要求:能够在数据库管理系统中实现。(3)具有较高的范式:数据完整性好、效益高,便于理解和维护,没有数据冲突。(06.04,简答49)简述数据库设计的目标和要求,2.数据库设计步骤,数据库设计可以分为概念结构设计、逻辑结构设计和物理结构设计三个阶段。(1)概念结构设计。这是数据库设计的第一个阶段,在管理信息系统的分析阶段,已经得到了系统的数据流程图和数据字典,现在要结合数据规范化的理论,用一种数据模型将用户的数据需求明确地表示出来。概念数据模型是面向问题的模型,反映了用户的现实工作环境,是与数据库的具体实现技术无关的。建立系统概念数据模型的过程叫做概念结构设计。,(2)逻辑结构设计。根据已经建立的概念数据模型,以及所采用的某个数据库管理系统软件的数据模型特性,按照一定的转换规则,把概念模型转换为这个数据库管理系统所能够接受的逻辑数据模型。不同的数据库管理系统提供了不同的逻辑数据模型,如层次模型、网状模型、关系模型等。(3)物理结构设计。为一个确定的逻辑数据模型选择一个最适合应用要求的物理结构的过程,就叫做数据库的物理结构设计。数据库在物理设备上的存储结构和存取方法称为数据库的物理数据模型。,6.2.2概念结构设计,描述概念数据模型的主要工具是E-R(实体一联系)模型,或者叫做E-R图。利用E-R图实现概念结构设计的方法就叫做E-R方法。,1.概念模型的表示方法,E-R图主要是由实体、属性和联系三个要素构成的。在E-R图中,使用了下面四种基本的图形符号。(E-R模型符号历年也是多次考过选择题),(1)实体:用矩形框表示,框内写明实体名称.如:,(2)属性:用椭圆形框表示,框内写明属性名称.,(3)联系:用菱形框表示,框内写明联系名称,并用线分别与有关的实体连接起来,同时在线上注明联系类型(1:1,1:n,m:n)。,表示“选修”这个联系,(2007.10,单选17)在数据库设计的过程中,采用E-R模型属于()A、逻辑数据模型B、物理数据模型C、关系数据模型D、概念数据模型,2.确定系统实体、属性及联系,利用系统分析阶段建立的数据字典,并对照数据流程图对系统中的各个数据项进行分类、组织,确定系统中的实体、实体的属性、标识实体的码以及实体之间联系的类型。在数据字典中“数据项”是基本数据单位,一般可以作为实体的属性。“数据结构”、“数据存储”和“数据流”条目都可以作为实体,因为它们总是包含了若干的数据项。作为属性必须是不可再分的数据项,也就是说在属性中不能包含其他的属性。,(2007.04,单选18)在数据库设计过程中,实体属性对应的数据字典条目是()A、数据结构B、数据流C、数据存储D、数据项,3.确定局部(分)E-R图,根据上面的分析,可以画出部分实体联系图。在这些实体中有下画线的属性可以作为实体的码,这几个实体之间存在着1:1、1:n和m:n几种联系。,下面一个简单的E-R图为例,给同学们一个直观的体会。,4.集成完整(总)E-R图,各个局部(分)E-R图画好以后,应当将它们合并起来集成为完整(总)E-R图。在集成时应当注意如下几点:(1)消除不必要的冗余实体、属性和联系。(2)解决各分E-R图之间的冲突。(3)根据情况修改或重构E-R图。,6.2.3逻辑结构设计,逻辑结构设计的任务,就是把概念结构设计阶段建立的基本E-R图,按选定的管理系统软件支持的数据模型(层次、网状、关系),转换成相应的逻辑模型。这种转换要符合关系数据模型的原则。E-R图向关系模型的转换是要解决如何将实体和实体间的联系转换为关系,并确定这些关系的属性和码。这种转换一般按下面的原则进行:,(1)一个实体转换为一个关系,实体的属性就是关系的属性,实体的码就是关系的码。(2)一个联系也转换为一个关系,联系的属性及联系所连接的实体的码都转换为关系的属性,但是关系的码会根据联系的类型变化,如果是:1:1联系,两端实体的码都成为关系的候选码。1:n联系,n端实体的码成为关系的码。m:n联系,两端实体码的组合成为关系的码。(3)具有相同码的关系可以合并。1.转换关系 2.合并关系,按照E-R图向关系模型转换的原则将下列E-R图(题42图)转换为关系。,职工信息数据库概念结构如下:,写出关系数据库的逻辑结构,主码用下划线标记。,学校有若干班级,每个班级有若干学生,每个学生选修多门课程,每门课程多名学生选修,现要产生如下学生成绩单,试设计满足成绩单的关系数据模型。,学生成绩单,生产与销售系统数据库的ER图如图1:,(2006.10,单选17)在E-R图向关系模型转换时,若A、B两个实体之间存在ln的联系,那么这个联系的码应当是()AA实体的码 BB实体的码 CA和B实体码的组合 DA或B实体的码(2005.10,单选13)有一个1:1联系的E-R模型,在向关系模型转换时,它最多转换成()A一个关系 B二个关系。C三个关系 D四个关系,6.3数据库的物理实现,数据库设计的最后阶段是确定数据库在物理设备上的存储结构和存取方法,也就是设计数据库的物理数据模型。6.3.1建立VFP的数据表 数据表也简称表,在VFP中数据表一般应当包含在数据库中,叫做数据库表(简称库表);但是也可以独立存在,叫做自由表。数据库逻辑数据模型的一个关系对应了VFP软件中的一个表,关系的属性对应了表的字段,关系框架对应了表结构,关系元组对应了表记录。,1.建立数据表结构,(1)设计数据表。在利用VFP创建一个新的数据表文件以前,应当根据逻辑模型和数据字典先分析和设计数据表。需要确定数据表名称,所含字段名称、类型、宽度以及应当建立的索引字段等。为了便于操作使用,应当考虑下面几点:1、必须有表文件名,假定为BUMEN.DBF(数据表的扩展名为.dbf)2.各字段要有惟一名称,我们用拼音表示。3.根据各字段值决定其数据类型及宽度。(2)创建数据表。在VFP的主窗口,单击工具栏“新建”按钮,打开“新建”对话框。在文件类型框中选定“表”选项,单击“新建”按钮,打开“创建”新文件的对话框。在表设计器中我们已经可逐次键入字段名、类型、宽度及小数位数的信息。字段名就当由不超过10个字符(5个汉字)组成。NULL含义,(2005.4,单选21)Visual FoxPro自由表中字段名的字符数最多不超过()A.8个 B.10个 C.16个 D.24个,应用举例:(09年1月应用题42题)在Visual FoxPro中,使用表设计器创建“职工人事档案”数据表的结构(如题42表所示)。(字段的宽度以题42表为准,不考虑预留宽度。),请将表设计器的设置结果填写在下表中,不需要设定的项目请用“”表示,VFP常用文件类型,2.数据表记录的输入,在创建数据表时可以根据系统提示直接输入记录,但是也可以暂时不输入记录。没有记录只有结构的数据表叫做空表。文件有两种打开方式,“以只读方式打开”的文件是不能编辑修改的。因为不需要“共享”数据,我们选择用“独占”方式打开文件。单击“确定”按钮后数据表文件被打开。(3)追加记录。首先在主菜单的“显示”下拉菜单中,单击“刘览”选项,打开表的浏览窗口。追加一条记录。连续追加。成组追加。,(2004.10,单选26)要在数据表浏览窗口中连续输入新记录,应当()A在显示下拉菜单中单击“追加方式”选项B在表下拉菜单中单击“追加新记录”选项C在表下拉菜单中单击“追加记录”选项D敲快捷键Ctrl+Y3.浏览数据表记录,6.3.2建立VFP的数据库,前面建立的表都是自由表,而实际上一个应用系统总是由多个相关表构成的.要在多个自由表之间建立联系,必须通过数据库来实现.数据库本身是不存储数据的,它只存储表、视图及它们之间的关系等。在数据库中的表叫做数据库表,数据库为数据表提供了数据字典、各种数据保护和数据管理功能,所以数据库表比自由表要完善得多。一个数据库是由数据库文件(.DBC)、数据库备注文件(.DCT)和数据库索引文件(.DCX)三类文件组成.,(2004.10,单选27)数据库备注文件的扩展名是()A.DOCB.DBCC.DCTD.DCX,1、建立数据库文件2、创建数据库表可以直接在数据库中建立数据表,也可以将自由表添加到数据库中,但是不能将另一个数据库中的表拉到当前数据库来。可以在同一个数据库中建立多个表。,(1)添加数据表。打开选定数据库的“数据库设计器”窗口,在“数据库设计器”工具栏中,单击“添加表”选项,将会弹出“打开”窗口,选择要添加的表后,单击“确定”按钮,就可以把一个自由表添加到当前数据库中,并将自由表变成数据库表。(2)创建数据库表。也可以在数据库设计器中直接创建数据表。首先单击“数据库设计器”工具栏的“新建表”按钮,然后在对话框中单击“新建表”按钮,将打开数据库“表设计器”。数据库表添加或创建完成以后,关闭数据库设计器窗口。包含了数据表的数据库文件就保存在外存储器中。,3、数据库文件的打开与关闭(1)数据库文件的打开。一般通过单击主菜单”文件”下拉菜单的“打开”功能。在弹出的“打开”对话框窗口选定数据库文件后,单击“打开”按钮打开。在打开一个数据库表的时候,系统也会自动先打开其数据库文件,然后再打开选定的表。(2)数据库文件的关闭。除了可以通过像关闭其他Windows窗口一样,关闭“数据库设计器”窗口来关闭当前数据库以外,还可以使用专门的命令来关闭数据库。,设置数据表的索引,1、索引表和索引文件用户对数据表常常会有不同的需求,为了加快数据的检索、显示、查询的打印速度,就需要对文件中的记录顺序进行重组。实现的方法一般有两种:一种叫做排序;另一种叫做索引。排序的作用是按指定字段或字段组中数据值的大小顺序,以递增(升序)或递减(降序)方式重新排列全部数据记录,并生成一个新的数据表文件。,索引不建立一个新的数据表文件,只是按照给定字段表达式值的大小,生成一个索引表,并使数据表中的记录按索引表的要求以递增(升序)或递减(降序)顺序显示。索引技术除可以重新排列数据表记录的前后顺序外,在建立数据表间的关联时,或者利用SQL语言建立查询、视图时,都必须靠索引技术来支持。,(2004.10,简答49)试比较排序与索引的异同。排序的作用是按指定字段或字段组中数据值的大小顺序,以递增(升序)或递减(降序)方式重新排列全部数据记录,并生成一个新的数据表文件。索引不建立一个新的数据表文件,只是按照给定字段表达式的大小,生成一个索引表,并使数据表中的记录按索引表的要求以递增(升序)或递减(降序)顺序显示。在VF系统中,可以为一个数据表建立多个不同的索引文件,每个索引文件都能确定一种逻辑顺序。在VF系统中主要使用结构复合索引文件,它的扩展名是。CDX。,(2005.10,单选15)可以为一个表创建的索引数是()A.1 个B.10个C.与字段数相同D.任意个,2.索引关键字的类型索引关键字:是由一个或若干个字段构成的索引表达式.索引表达式的类型决定了不同的索引方式.VFP系统提供了四种不同的类型,它们分别是主索引、候选索引、普通索引和惟一索引。(1)主索引。主索引是能够惟一地确定数据表中一条记录的字段或字段组合表达式;要求该字段或字段组合表达式的值,在数据表的全部记录中都不能出现重复。主索引只能在数据库表中使用,而且一个数据表只能指定一个主索引。表的主索引就相当于关系的主码。,(2)候选索引。候选索引像主索引一样,是能够惟一地确定数据表中一条记录的字段或字段组合表达式。但是,一个数据表允许建立多个候选索引,可以在数据库表或自由表中创建候选索引。如果将一个包含了重复数据的字段指定为候选索引,系统会返回一个出错信息,并禁止创建该索引。表的候选索引相当于关系的候选码。(3)普通索引。普通索引允许数据表中各记录的索引字段或字段组合表达式的值相同,而且既允许在数据库表中创建,也允许在自由表中创建。(4)唯一索引。唯一索引是VFP为保持与低版本软件的兼容性而保留的一种索引类型,一般情况下很少使用。它允许数据表中各记录的索引字段,或字段组合表达式的值相同,但是在索引表中只保留数据表中与索引字体值相同的第一条记录。,3、创建索引文件可以使用命令建立索引文件,但是利用表设计器创建索引文件更加直观、方便。结构复合索引文件可以在创建数据表时建立,也可以对已经建立好的数据表创建或修改索引。4、索引的操作(1)打开与关闭。要使用索引,必须先要打开索引。结构复合索引总是随着数据表打开,一旦数据表文件关闭,相应的索引文件也就自动关闭了。(2)确定主索引。结构复合索引打开后,其中的索引标识(Tag)并不起作用,数据表记录顺序仍然保持着原始自然排列。必须执行确定主索引的操作后,数据表记录的排列才会跟着变化。在程序中常常使用命令方式确定当前主索引。(3)删除索引标识。要删除结构复合索引文件中的索引标识,应当打开数据表文件,并打开其表设计器对话框。在“索引”页卡中选定要删除的索引标识后,单击“删除”按钮删除。,创建数据表之间的关联,对于数据库中各相关数据表之间的联系必须通过建立关联来实现。,创建视图,在数据库的概念结构设计中,用户的局部概念模式是全局概念模式的子集,叫做用户模式、外模式,它是从用户的观点看到的数据库,所以也叫做用户视图。在VFP中,视图是数据库的一个部分,分为本地视图和远程视图两类。本地视图是利用本地数据库表、自由表及其他视图建立在本地服务器上视图。远程视图是利用远程服务器中的数据建立的视图。视图也以文件的形式保存在存储器中。文件扩展名为.VUE。视图是一种特殊类型的数据表,它往往由一个或多个表(或视图)中的部分字段或部分记录组成。虽然从用户的角度看,视图也像数据表一样有自己的名字,相应的字段、记录,具备了一般数据表的特征,可是在实际存储器中并没有这要的数据实体;在数据库中仅存放了与关联数据表相应的连接的操作要求。所以该视图可称为“虚表”或逻辑表。,一般建立视图的目的有三个:数据库系统是供多用户使用的,不同的用户只能查看与自己相关的一部分数据,以保障数据的安全和完整。视图可以为每个用户建立自己的数据集合。为了保证数据表具有较高的范式,往往将一个数据集合分解成多个相关的数据表。而在使用多个表的数据时,将各表中有用的数据集中到一个视图是最方便的办法。简化对数据库的操作管理。只要事先将各表中相关数据项集中放在一个视图中,通过视图就可以同时更新各表中的数据。创建视图(1)创建单表视图(2)创建多表视图,例:2010年真题,在Visual FoxPro中,利用数据库“固定资产”中的数据表“设备”如题42(1)表和数据表“使用”如题42(2)表创建视图“折旧”如题42(3)表,该视图包括“设备名称”、“设备编号”、“价格”、“现值”四个字段。,(1)请分析用两个数据表(比如“设备”和“使用”)建立视图的先决条件;(2分)(2)要创建如题42(3)表所示的视图“折旧”,应以哪个字段建立两表的关联,并分析原因;(4分)(3)归纳利用视图设计器建立多表视图的步骤。(4分),6.4代码设计,代码是计算机和人都容易理解的符号(或语言),能够实现人和计算机的沟通。代码的重要性表现在以下几个方面。(2005.10,简答46)试述代码的重要性。(1)可以惟一地标识一个分类对象(实体)。(2)加快输入,减少出错,便于存储和检索,节省存储空间。(3)使数据的表达规范化,简化处理程序,提高处理效率。(4)代码也叫信息编码,是作为事物(实体)惟一标识、一组有序字符组合。它必须便于计算机和人识别、处理。,代码设计方法,1、代码设计的原则(2007.10,简答38简述代码设计的原则)(1)惟一性:是区别系统中每个实体或属性的惟一标识。(2)简单性:尽量压缩代码长度,可降低出错机会。(3)易识别性:为便于记忆、减少出错,代码应当逻辑性强,表意明确。(4)可扩充性:不需要变动原代码体系,可直接追加新代码,以适应系统发展。(5)合理性:必须在逻辑上满足应用需要,在结构上与处理方法相一致。(6)规范性:尽可能采用现有的国际、部标编码,结构统一。,(2006.10,单选20)逻辑性强、表意明确属于代码设计原则的()A规范性 B惟一性 C可扩充性D易识别性(2006.4,单选23)代码应尽可能采用现有的国标、部标编码。这体现了代码的【】A合理性 B规范性 C惟一性 D统一性,2、代码的类型代码的类型是指代码符号的表示形式,进行代码设计时可选择一种或几种代码类型的组合。(1)顺序码。它也叫序列码,用连续数字作为每个实体的标识。编码顺序可以是实体出现的先后,或实体名的字母顺序。其优点简单、易处理、易扩充、用途广;缺点是没有逻辑含义、不能表示信息特征、无法插入、删除数据将造成空码。(2)重复码。采用与原来手工系统相同的编码,叫做重复码。其优点是容易被原系统人员接受、易实现、便于推广;缺点是不能任意更改、可能不尽合理。,(3)成组码。它是最常用的一种编码、它将代码分为几段(组),每段表示一种含义,每段都由连续数字组成。其优点是简单、方便、能够反映出分类体系、易校对、易处理;缺点是位数多不便记忆,必须为每段预留编码,否则不易扩充。例如:身份证编码共17位。(4)表意码。它将表示实体特征的文字、数字或记号直接作为编码。其优点是可以直接明白编码含义、易理解、易记忆;缺点是编码长度位数可变,给分类、处理带来不便。例如:网站代码。,(5)专用码。它是具有特殊用途的编码,如汉字国标码、五笔字型编码、自然码、ASCII代码等。(6)它也叫合成码、复杂码。它由若干简单编码组合而成,使用十分普遍。其优点是容易分类、容易增加编码层次、可以从不同角度识别编码、容易实现多种分类统计;缺点是编码位数和数据项个数较多。,(2007.04,单选20)验证ASCII代码正确的标准是【】A最高位是1 B最高位是0 C最低位是1 D最低位是0,管理信息系统中的代码,管理信息系统中常见的代码有部门代码、人员代码、物资代码、设备代码、产品代码和会计科目代码等。这些常见代码的设计方法如下。1、部门代码部门代码一般采用成组码,比如使用3位数字编码。前2位作为一个企业各部门的编码,后1位作为部门内各科室、班组的编码。2、人员代码人员代码涉及人事劳资部门,一般有两种编码方法:一种是用简单的顺序码,代码位数可以根据企业职工人数决定;另一种是使用组合码,因为这样便于分类、汇总。,3.物资代码物资代码的设计既要考虑物资管理部门的要求,也要满足会计核算的要求。一般可以采用成组码,并且用表意码辅助。4、设备代码在设备代码中反映的经济用途、使用情况、使用部门及设备类别等信息,所以一般使用组合码。,5.产品代码产品代码可以采用成组码或表意码设计。6.会计科目代码会计科目代码反映经济业务和会计核算的内容,能够在一定范围内综合汇总会计指标。代码设计应当注意通用性,所以就根据国家财政部及本行业、本地区的规定,编制会计科目代码。,(2006.10单选15)在管理信息系统中,产品代码一般采用成组码和()A表意码B重复码C组合码D顺序码(2004.10单选22)设备代码一般采用()A组合码B成级码C专用码D表意码,