《2022年二级C公共基础知识总结3 .docx》由会员分享,可在线阅读,更多相关《2022年二级C公共基础知识总结3 .docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、学习好资料欢迎下载二级公共基础学问总结第一章数据结构与算法1 .1 算法1.1.1 算法:是指解题方案的精确而完整的描述;算法不等于程序,也不等运算机方法,程序的编制不行能优于算法的设计;A 算法的基本特点:是一组严谨地定义运算次序的规章,每一个规章都是有效的,是明确的,此次序将在有限的次数下终止;特点包括:(1) 可行性;(2) 确定性,算法中每一步骤都必需有明确定义,不充许有模棱两可的说明,不答应有多义性;(3) 有穷性,算法必需能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; ( 4)拥有足够的情报;B 算法的基本要素:一是对数据对象的运算和操作;二是算法的掌
2、握结构;指令系统:一个运算机系统能执行的全部指令的集合;运算机可以执行的基本操作是以指令的形式描述的;基本的运算和操作包括:算术运算、规律运算、关系运算、数据传输;算法的掌握结构:次序结构、挑选结构、循环结构;算法中各操作之间的执行次序称为算法的掌握结构;C 算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法;1.1.2 算法复杂度:算法时间复杂度和算法空间复杂度;算法时间复杂度是指执行算法所需要的运算工作量; 算法空间复杂度是指执行这个算法所需要的内存空间;1.2 数据结构的基本概念1.2.1 数据结构讨论的三个方面:(1) 数据集合中各数据元素之间所固有的规律关系,即数据的
3、规律结构;(2) 在对数据进行处理时,各数据元素在运算机中的储备关系,即数据的储备结构;(3) 对各种数据结构进行的运算;数据结构是指反映数据元素之间关系的数据元素集合的表示;数据处理,是指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更换等运算,也包括对数据元素进行分析;A 数据的规律结构包含:( 1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系;数据元素之间的前后件关系是指它们的规律关系,而与它们在运算机中的储备位置无关;数据的规律结构,是指反映数据元素之间规律关系的数据结构;B 数据的储备结构有次序、链接、索引等;1.2.2 线性结构(又称线性表)条件:(1)
4、有且只有一个根结点;( 2)每一个结点最多有一个前件,也最多有一个后件;非线性结构:不满意线性结构条件的数据结构;1.3 线性表及其次序储备结构1.3.1 线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的;在复杂线性表中,由如干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件;数据元素在线性表中的位置只取决于它们自己的序号,即数据元素之间的相对位置是线性的;非空线性表的结构特点:(1) 且只有一个根结点a1,它无前件;(2) 有且只有一个终端结点an,它无后件;(3) 除根结点与终端结点外,其他全部结点有且只有一个前件,也有且只有一个后
5、件;结点个数n 称为线性表的长度,当n=0 时,称为空表;1.3.2 线性表的次序储备结构具有以下两个基本特点:(1) 线性表中全部元素的所占的储备空间是连续的;(2) 线性表中各数据元素在储备空间中是按规律次序依次存放的;ai 的储备地址为: ADRa i=ADRa 1+i-1k, , ADRa 1为第一个元素的地址, k 代表每个元素占的字节数;1.3.3 次序表的运算:插入、删除;(详见 17-19 页)1.4 栈和队列1.4.1 栈是限定在一端进行插入与删除的线性表,答应插入与删除的一端称为栈顶,不答应插入与删除的另一端称为栈底;栈依据“先进后出” ( FILO )或“后进先出” (L
6、IFO )组织数据,栈具有记忆作用;用top 指示栈顶位置, 用 bottom 指向栈底;栈的基本运算: ( 1)入栈运算是指在栈顶位置插入一个元素;(2)退栈运算是指取出栈顶元素并赋给一个指定的变量; (3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时栈顶指针无变化;1.4.2 队列是指答应在一端(队尾)进行插入,而在另一端(队头)进行删除的线性表;答应插入的一端称为队尾, 尾指针( rear)指向队尾元素, 即尾指针总是指向最终被插入的元素;答应删除的一端称为排头, 排头指针( front )指向排头元素的前一个位置;队列是“先进行出” ( FIFO)或“后进后出” ( LILO )的线
7、性表;队列运算包括( 1)入队运算:在循环队列的队尾加入一个新元素;(2)退队运算:在循环队列的排头位置推出一个元素并赋给制定的变量;循环队列: s=0 表示队列空, s=1 且 front=rear 表示队列满 (详见 21-23 页)1.5 线性链表1.5.1 假设数据结构中的每一个数据结点对应于一个储备单元,这种储备单元称为储备结点,简称结点;结点由两部分组成: (1)用于存放数据元素值,称为数据域;( 2)用于存放指针,称为指针域,用于指向该结点的前一个或后一个结点;在链式储备结构中,储备数据结构的储备空间可以不连续,各数据结点的储备次序与数据元素之间的规律关系可以不一样,而数据元素之
8、间的规律关系是由指针域来确定的;链式储备方式即可用于表示线性结构,也可用于表示非线性结构;线性链表, HEAD 指向线性链表中第一个数据元素的结点,称为头指针;线性链表最终一个结点的指针域为空用 NULL 或 0 表示,表示链表终止, HEAD=NULL (或 0)称为空表; 假如是两指针: 左指针( Llink ) 指向前件结点,右指针( Rlink )指向后件结点,这种的线性链表称为双向链表;1.5.2 线性链表的基本运算:查找、插入、删除;1.6 树与二叉树1.6.1 树是一种简洁的非线性结构,全部元素之间具有明显的层次特性;上端结点是前件,下端结点是后件;在树结构中,每一个结点只有一个
9、前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根;每一个结点可以有多个后件,称为该结点的子结点;没有后件的结点称为叶子结点;在树结构中,一个结点所拥有的后件的个数称为该结点的度,叶子结点的度为0;全部结点中最大的度称为树的度;树的最大层次称为树的深度;1.6.2 二叉树的特点: ( 1)非空二叉树只有一个根结点;( 2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树;二叉树的基本性质:(1) 在二叉树的第 k 层上,最多有 2k-1k 1个结点;(2) 深度为 m 的二叉树最多有 2m-1 个结点;(3) 度为 0 的结点(即叶子结点)总是比度为2 的结点多一个
10、;(4) 具有 n 个结点的二叉树,其深度至少为log 2n+1, 其中log 2n 表示取 log 2n 的整数部分;(5) 具有 n 个结点的完全二叉树的深度为log 2n+1 ;(6) 设完全二叉树共有 n 个结点;假如从根结点开头,按层序(每一层从左到右)用自然数1,2, .,n给结点进行编号( k=1,2.n),有以下结论:如 k=1,就该结点为根结点,它没有父结点;如k1 ,就该结点的父结点编号为INTk/2 ;如 2k n,就编号为 k 的结点的左子结点编号为2k;否就该结点无左子结点(也无右子结点);如 2k+1 n,就编号为 k 的结点的右子结点编号为2k+1 ;否就该结点无
11、右子结点;满二叉树是指除最终一层外,每一层上的全部结点有两个子结点,就k 层上有 2k-1 个结点深度为m 的满二叉树有 2m-1 个结点;完全二叉树是指除最终一层外,每一层上的结点数均达到最大值,在最终一层上只缺少右边的如干结点;1.6.3 二叉树储备结构采纳链式储备结构,对于满二叉树与完全二叉树可以按层序进行次序储备;由于二叉树的储备结构中每一个储备结点有两个指针域,因此二叉树的链式储备结构也称为二叉链表;1.6.4 二叉树的遍历是指不重复地拜访二叉树中的全部结点:(1) 前序遍历( DLR ):拜访根结点;前序遍历左子树;前序遍历右子树;(2) 中序遍历( LDR ):中序遍历左子树;拜
12、访根结点;中序遍历右子树;(3) 后序遍历( LRD ):后序遍历左子树;后序遍历右子树;拜访根结点;1.7 查找技术1.7.1 次序查找的使用情形:(1)线性表为无序表;(2)表采纳链式储备结构;1.7.2 二分法查找只适用于次序储备的有序表,对于长度为n 的有序线性表,最坏情形只需比较log 2n 次, 而次序查找需要比较 n 次;1.8 排序技术排序是指将一个无序序列整理成按值非递减次序排列的有序序列;1.8.1 交换类排序法: (1)冒泡排序法,最坏情形需要比较的次数为nn-1/2 ; ( 2)快速排序法;1.8.2 插入类排序法: ( 1)简洁插入排序法,最坏情形需要nn-1/2 次
13、比较;( 2)希尔排序法,最坏情形需要 on 1.5次比较;插入排序是指将无序序列中的各元素一次插入到已经有序的线性表中;1.8.3 挑选类排序法: ( 1)简洁挑选排序法 ,最坏情形需要nn-1/2 次比较;( 2)堆排序法,最坏情形需要onlog 2n 次比较;其次章程序设计基础2.1 程序设计方法与风格当今主导的程序设计风格:清楚第一,效率其次留意和考虑的因素: ( 1)源程序文档化(2)数据说明的方法(3)语句的结构 (4)输入和输出2.2 结构化程序设计2.2.1 结构化程序设计的原就: (1)自顶而下( 2)逐步求精( 3)模块化( 4)限制使用 goto 语句2.2.2 结构化程
14、序设计的基本结构: (1)次序结构( 2)挑选结构( 3)重复结构2.2.3 结构化程序设计留意把握如下要素:(1) 使用程序设计语言中的次序、挑选、循环等有限的掌握结构表示程序的掌握规律;(2) 选用的掌握结构只准许有一个入口和一个出口;(3) 程序语句组成简洁识别的块,每块只有一个入口和一个出口;(4) 复杂结构应当用嵌套的基本掌握结构进行组合嵌套来实现;(5) 语言中所没有的掌握结构,应当采纳前后一样的方法来模拟;(6) 严格掌握 GOTO 语句的使用;2.3 面对对象的程序设计2.3.1 以 SIMULA语言为标志,面对对象方法的基本要点首次在SIMULA语言中得到了表达和实现;面对对
15、象方法的优点: ( 1)与人类习惯的思维方法一样(2)稳固性好( 3)可重用性好( 4)易于开发大型软件产品( 5)可爱护性好2.3.2 A 对象可以用来表示客观世界中的任何实体;面对对象的程序设计方法中设计的对象是系统中用来描述客观食物的一个实体,是构成系统的一个基本单位,它由一组表示其静态特点的属性和它可执行的一组操作组成;属性即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来转变;对象的基本特点: (1)标识唯独性( 2)分类性( 3)多态性( 4)封装性B 类是具有共同属性、共同方法的对象的集合;类是对象的抽象,它描述了属于该对象类型的全部对象的性质,而一个对象就是其
16、对应类的一个实例;C 消息是一个实例与另一个实例之间传递的信息,它恳求对象执行某一处理或回答某一要求的信息,它统一了数据流和掌握流;消息的组成: (1)接收消息的对象的名称; ( 2)消息标识符; ( 3)零个或多个参数;D 继承是使用已有的类定义作为基础建立新类的定义技术;继承分为单继承与多重继承;单继承是指,一个类只答应由一个分类,即类等级为树形结构;多重继承是指,一个类答应有多个父类;E 多态性是指对象依据所接受的消息而做出动作,同样的消息被不同的对象接受时可导致完全不同的行动;第三章软件工程基础3.1 软件工程基本概念3.1.1 运算机软件是包括程序、数据及相关文档的完整集合;软件的特
17、点包括:(1) 软件是一种规律实体,而不是物理实体,具有抽象性;(2) 软件的生产与硬件不同,它没有明显的制作过程;(3) 软件在运行、使用期间不存在磨损、老化问题;(4) 软件的开发、运行对运算机系统具有依靠性,受运算机系统的限制,这导致了软件移植的问题;(5) 软件复杂性高,成本昂贵;(6) 软件开发涉及诸多的社会因素;软件按功能分为应用软件、系统软件、支撑软件(或工具软件);3.1.2 软件危机主要表现在成本、质量、生产率等问题;软件工程是应用于运算机软件的定义、开发和爱护的一整套方法、工具、文档、实践标准和工序;软件工程包括 3 个要素:方法、工具和过程;方法是完成软件工程项目的技术手
18、段;工具支持软件的开发、治理、文档生成;过程支持软件开发的各个环节的掌握、治理;3.1.3 软件工程过程是把输入转化为输出的一组彼此相关的资源和活动,包含4 种基本活动:(1)P(Plan) 软件规格说明;(2)DDo 软件开发;(3)CCheck 软件确认;(4)AAction 软件演进;软件生命周期:软件产品从提出、实现、使用爱护到停止使用退役的过程; 软件生命周期三个阶段 :软件定义、软件开发、运行爱护,主要活动阶段是:(1)可行性讨论与方案制定;(2)需求分析; (3)软件设计; (4)软件实现; (5)软件测试; (6) 运行和爱护;3.1.4 软件工程的目标和与原就:目标:在给定成
19、本、进度的前提下,开发出具有有效性、牢靠性、可懂得性、可爱护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满意用户需求的产品;基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的费用;能按时完成开发,准时交付使用;基本原就:抽象、信息隐藏、模块化、局部化、确定性、一样性、完备性和可验证性;软件工程的理论和技术性讨论的内容主要包括:软件开发技术和软件工程治理;软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境;软件工程治理包括:软件治理学、软件工程经济学、软件心理学等内容;软件治理学包括人员组织、进度支配、质量保证、配置治理
20、、项目方案等;软件工程经济学是讨论软件开发中成本的估算、成本效益分析的方法和技术,用经济学的基本原理来讨论软件工程开发中的经济效益问题;软件心理学是软件工程领域具有挑战性的一个全新的讨论视角,它是从个体心理、人类行为、组织行为和企业文化等角度来讨论软件治理和软件工程的;3.2 结构化分析方法结构化方法包括结构化分析方法、结构化设计方法和结构化编程方法,其核心和基础是结构化程序设计理论;3.2.1 需求分析方法有( 1)结构化需求分析方法;(2)面对对象的分析的方法;需求分析阶段的工作: (1)需求猎取( 2)需求分析( 3)编写需求规格说明书( 4)需求评审3.2.2 结构化分析方法的实质:着
21、眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的规律模型;结构化分析的常用工具:(1) 数据流图: 描述数据处理过程的工具, 是需求懂得的规律模型的图形表示,它直接支持系统功能建模;(2) 数据字典:对全部与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、储备成分和中间运算结果有共同的懂得;(3) 判定树:从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,依据描述材料中的连接词找出判定条件之间的从属关系、并列关系、挑选关系,依据它们构造判定树;(4) 判定表:与判定树相像,当数据流图中的
22、加工要依靠于多个规律条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较相宜;数据字典是结构化分析的核心;3.2.3 软件需求规格说明书的作用: ( 1)便于用户、开发人员进行懂得和沟通(2)反映出用户问题的结构, 可以作为软件开发工作的基础和依据(3)作为确认测试和验收的依据软件需求规格说明书的特点:( 1)正确性; ( 2)无岐义性;(3)完整性; ( 4)可验证性; (5) 一样性;( 6)可懂得性;(7)可追踪性;3.3 结构化设计方法3.3.1 软件设计是一个把软件需求转换为软件表示的过程;软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完
23、成预定的任务,即软件设计是确定系统的物理模型;从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计;结构设计:定义软件系统各主要部件之间的关系;数据设计:将分析时创建的模型转化为数据结构的定义;接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信;过程设计:把系统结构部件转换成软件的过程描述;从工程治理角度来看:概要设计和具体设计;软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计; 后进行低层次的过程设计; 穿插进行数据设计和接口设计;软件设计的基本原理:(1) 抽象:一种思维工具,就是把事物本质的共同特性提取出来而不考虑其他细节;(2) 模
24、块化:模块是指一个待开发的软件分解成如干小的简洁的部分;(3) 信息隐藏:在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能拜访的;(4) 模块独立性:每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简洁;模块的独立程度是评判设计好坏的重要度量标准;衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准; 内聚性:一个模块内部各个元素间彼此结合的紧密程度的度量;耦合性:模块间相互连接的紧密程度的度量;在程序结构中各模块的内聚性越强,就耦合性越弱;优秀软件应高内聚,低耦合;3.3.2 软件概要设计的基本任务是:(1)设计软件系统结构;(2)数据结构及
25、数据库设计;(3)编写概要设计文档;(4)概要设计文档评审;常用的软件设计工具是结构图,也称程序结构图;模块用一个矩形表示, 箭头表示模块间的调用关系;在结构图中仍可以用带注释的箭头表示模块调用过程中来回传递的信息;仍可用带实心圆的箭头表示传递的是掌握信息,空心圆箭心表示传递的是数据;结构图的基本形式:基本形式、次序形式、重复形式、挑选形式;结构图有四种模块类型:传入模块、传出模块、变换模块和和谐模块;典型的数据流类型有两种:变换型和事务型;变换型系统结构图由输入、中心变换、输出三部分组成;事务型数据流的特点是:接受一项事务,依据事务处理的特点和性质,挑选分派一个适当的处理单元,然后给出结果;
26、3.3.3 具体设计:是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节;常见的过程设计工具有:图形工具(程序流程图)、表格工具(判定表) 、语言工具( PDL );3.4 软件测试3.4.1 软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满意规定的需求或是弄清预期结果与实际结果之间的差别;软件测试的目的:发觉错误而执行程序的过程;一个好的测试用例是指很可能找到迄今为止尚未发觉的错误的用例;一个胜利的测试是发觉了至今尚未发觉的错误的测试;3.4.2 软件测试方法:静态测试和动态测试;静态测试包括代码检查、静态结
27、构分析、代码质量度量;不实际运行软件,主要通过人工进行;动态测试:是基本运算机的测试,主要包括白盒测试方法和黑盒测试方法;白盒测试: 在程序内部进行, 主要用于完成软件内部操作的验证;主要方法有规律掩盖、 基本基路径测试;黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库拜访错误、性能错误、初始化和终止条件错,用于软件确认;主要方法有等价类划分法、边界值分析法、错误估计法、因果图等;3.4.4 软件测试过程一般按4 个步骤进行:单元测试、集成测试、验收测试(确认测试)和系统测试;3.5 程序的调试3.5.1 程序调试的任务是诊断和改正程序中的错误,贯穿整个软件生命期,主要在开发阶
28、段进行;程序调试的基本步骤: ( 1)错误定位; (2)修改设计和代码,以排除错误; ( 3)进行回来测试,防止引进新的错误;3.5.2 软件调试可分为静态调试和动态调试;静态调试主要是指通过人的思维来分析源程序代码和排错,是主要的设计手段,而动态调试是帮助静态调试;主要调试方法有:( 1)强行排错法; (2)回溯法;( 3)缘由排除法第四章数据库设计基础4.1 数据库系统的基本概念4.1.1 A 数据:实际上就是描述事物的符号记录;数据的特点:有肯定的结构,有型与值之分,如整型、实型、字符型等;而数据的值给出了符合定型的值;B 数据库:是数据的集合,具有统一的结构形式并存放于统一的储备介质内
29、,是多种应用数据的集成,并可被各个应用程序共享;数据库存放数据是按数据所供应的数据模式存放的,具有集成与共享的特点;C 数据库治理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据爱护、掌握及爱护和数据服务等,是数据库的核心;D 数据库治理系统功能:(1) 数据模式定义:即为数据库构建其数据框架;(2) 数据存取的物理构建:为数据模式的物理存取与构建供应有效的存取方法与手段;(3) 数据操纵:为用户使用数据库的数据供应便利;(4) 数据的完整性、安生性定义与检查;(5) 数据库的并发掌握与故障复原;(6) 数据的服务:如拷贝、转存、重组、性能监测、分析等;为完成以上六个功能,数据库治理
30、系统供应以下的数据语言:(1) 数据定义语言:负责数据的模式定义与数据的物理存取构建;(2) 数据操纵语言:负责数据的操纵,如查询与增、删、改等;(3) 数据掌握语言:负责数据完整性、安全性的定义与检查以及并发掌握、故障复原等;数据语言按其使用方式具有两种结构形式:交互式命令又称自含型或自主型语言 ,宿主型语言(一般可嵌入某些宿主语言中) ;E 数据库治理员:对数据库进行规划、设计、爱护、监视等的专业治理人员;F 数据库系统:由数据库(数据) 、数据库治理系统(软件) 、数据库治理员(人员) 、硬件平台(硬件) 、软件平台(软件)五个部分构成的运行实体;硬件平台包括:运算机、网络软件平台包括:
31、操作系统、数据库开发工具、接口软件G 数据库应用系统:由数据库系统、应用软件及应用界面三者组成;4.1.2 数据库系统的进展:(1) 文件系统阶段:供应了简洁的数据共享与数据治理才能,但是它无法供应完整的、统一的、治理和数据共享的才能;(2) 层次数据库与网状数据库系统阶段:为统一与共享数据供应了有力支撑;(3) 关系数据库系统阶段4.1.3 数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与规律独立性)、数据统一治理与掌握;4.1.4 数据库系统的三级模式:(1) 概念模式:数据库系统中全局数据规律结构的描述,全体用户公共数据视图;(2) 外模式:也称子模
32、式与用户模式;是用户的数据视图,也就是用户所见到的数据模式;(3) 内模式:又称物理模式,它给出了数据库物理储备结构与物理存取方法;数据库系统的两级映射:(1) 概念模式到内模式的映射;(2) 外模式到概念模式的映射;4.2 数据模型数据模型的概念:是数据特点的抽象,从抽象层次上描述了系统的静态特点、动态行为和约束条件,为数据库系统的信息表与操作供应一个抽象的框架;描述了数据结构、数据操作及数据约束;E-R 模型的基本概念(1) 实体:概念世界中的基本单位,是客观存在的且又能相互区分的事物;(2) 属性:显示世界中事物的特性;(3) 联系:现实世界中事物间的关系;实体集的关系有一对一、一对多、
33、多对多的联系;E-R 模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性附属于实体;属性有属性域, 每个实体可取属性域内的值,一个实体的全部属性值叫元组;实体集间可通过联系建立连接关系E-R 模型的图示法: ( 1)实体集表示法;(2)属性表法; (3)联系表示法;4.2.3 层次模型的基本结构是树形结构,具有以下特点:(1) 每棵树有且仅有一个无双亲结点,称为根;(2) 树中除根外全部结点有且仅有一个双亲;4.2.4 从图论上看,网状模型是一个不加任何条件限制的无向图;4.2.5 关系模型采纳二维表来表示,简称表,由表框架及表的元组组成;一个二维表就是一个关系;关系中的数据约束
34、:(1)实体完整性约束:约束关系的主键中属性值不能为空值;(2) 参照完全性约束:是关系之间的基本约束;(3) 用户定义的完整性约束:它反映了具体应用中数据的语义要求;4.3 关系代数关系数据库系统的特点之一是它建立在数据理论的基础之上,其中最为闻名的是关系代数与关系演算;关系模型的基本运算:( 1)插入 (2)删除 3 修改 (4)查询(包括投影、挑选、笛卡尔积运算)4.4 数据库设计与治理数据库设计是数据应用的核心;4.4.1 数据库设计的两种方法:(1) 面对数据:以信息需求为主,兼顾处理需求;(2) 面对过程:以处理需求为主,兼顾信息需求;数据库的生命周期:需求分析阶段、概念设计阶段、
35、规律设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段;4.4.2 需求分析常用结构析方法和面对对象的方法;结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统;用数据流图表达数据和处理过程的关系;对数据库设计来讲,数据字典是进行具体的数据收集和数据分析所获得的主要结果;数据字典是各类数据描述的集合,包括5 个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据储备、处理过程;4.4.3 数据库概念设计的目的是分析数据内在语义关系;设计的方法有两种(1)集中式模式设计法;(2)视图集成设计法;设计方法: E-R 模型与视图集成;视图设计一般有三种设计次序:自顶向下、由底向上、由内向外;视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突;关系视图设计:关系视图的设计又称外模式设计;关系视图的主要作用: ( 1)供应数据规律独立性; (2)能适应用户对数据的不同需求; ( 3)有肯定数据保密功能;4.4.5 数据库的物理设计主要目标是对数据内部物理结构作调整并挑选合理的存取路径,以提高数据库拜访速度有效利用储备空间;4.4.6 数据库治理的内容: (1)数据库的建立; (2)数据库的调整; (3)数据库的重组; (4)数据库安全性与完整性掌握; ( 5)数据库的故障复原; (6)数据库监控