第四章 数据库设计基础
4.1 数据库系统的基本概念
数据:实际上就是描述事物的符号记录。
数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。
数据库:长期存储在计算机内部的、有组织、可共享的数据的集合。数据库存放数据是按数据所提供的数据模式存放的具有集成与共享的特点。
数据库管理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保
护和数据服务等,是数据库的核心。
数据库管理系统提供以下的数据语言:
(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;
(2)数据操纵语言:负责数据的操纵,如查询与增、删、改等;
(3)数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。
数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)。
数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。
数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬 件)、软件平台(软件)五个部分构成的运行实体。DBS是最大的包括其他所有的。
数据库应用系统:由数据库系统、应用软件及应用界面三者组成。
数据库发展的三个阶段:人工管理阶段、文件系统阶段、数据库管理阶段。
数据库系统阶段的基本特点:
1、数据的集成性 、
2、数据的高共享性与低冗余性 、
3、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。
数据库系统的三级模式:
(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;
(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据模式;
(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。
一个数据库只有一个内模式,可以有多个外模式。
数据库系统的两级映射:
(1)概念模式到内模式的映射;
(2)外模式到概念模式的映射。
4.2 数据模型
数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。
E-R模型的基本概念
(1)实体:现实世界中的事物;
(2)属性:事物的特性;
(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。
E-R模型的图示法:(1)实体集表示法; (2)属性表法; (3)联系表示法。
E-R模型的:矩形表示实体;椭圆表示矩形;棱形表示联系。
关系模型采用二维表来表示,简称表,由表框架及表的元组组成。
1、一个二维表就是一个关系。
2、在二维表中凡能唯一标识元组的最小属性称为键或码。具有唯一性。
3、元组就是二维表中一行,属性就是二维表表中一列。
4、从所有侯选健中选取一个作为用户使用的键称主键。
5、表A中的某属性是某表B的键,则称该属性集为A的外键或外码。
6、分量是不可以再分的。
以上六点非常重要。
关系中的数据约束:
(1)实体完整性约束:约束关系的主键中属性值不能为空值;
(2)参照完全性约束:是关系之间的基本约束;
(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。
4.3关系代数
关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据操作,其中最为著名的是关系代数与关系演算。
关系模型的基本运算:
(1)插入 (2)删除 (3)修改 (4)查询(包括投影、选择、笛卡尔积)
两个表的运算一般会考到:投影、链接、选择、笛卡尔积、交、并当中的一个。
4.4 数据库设计与管理
数据库设计是数据应用的核心。
数据库设计的两种方法:
(1)面向数据:以信息需求为主,兼顾处理需求;
(2)面向过程:以处理需求为主,兼顾信息需求。
数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。
需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。
数据字典是各类数据描述的集合,包括5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。
数据库概念设计的目的是分析数据内在语义关系。
公共基础补充知识点
1、一个数据结构的逻辑结构根据需要可以有多个存储结构。存储结构的不同,会造成处理
的效率不同。
2、程序设计方法和技术的发展经过了结构化程序设计和面向对象设计两个阶段。
3、当今程序设计的风格是“清晰第一,效率第二”。
4、程序可以没有输入,但是一定要有输出。
5、结构化程序设计遵循:自顶向下,逐步求精,模块化,限制使用goto语句(常考)。
6、面向对象的基本特点:标志唯一性,分类性,多态性,封装性,模块独立性。尤其重要的是多态性和封装性。没有类比性。
7、多态性:统一操作可以是不同对象的行为。同样的消息被不同的对象接收时可导致不同的动作的现象。
8、封装性:从外面看不到对象的内部,只能看到对象的外部特性。
9、类:是具有共同属性、共同方法的对象的集合。描述了属于该对象类型的所有对象的性质,而一个对象则是对应类的一个实例。(常考)
10、消息:是指对象间的相互合作的协作机制,是一个对象与另一个对象之间的传递的消息。
11继承:是指使用已有的类定义作为基础建立新类的定义技术。继承分为单继承和多继承。
12、面向对象中,类的实例叫做对象。
13、源程序文档化要求程序应该加上注释。注释一般为序言性注释和功能性注释。
14、面向对象方法和技术是以对象为核心。
软件工程基础
软件工程的核心思想是把软件当作一个工程产品来处理。
软件开发的三个阶段以及每个阶段的任务:
软件开发方法包括分析方法,设计方法,程序设计方法。
结构化方法包括结构化分析方法,结构化设计方法,结构化编程方法。
结构化分析方法在软件需求分析阶段的应用。
软件规格说明书(SRS)是需求分析阶段的最后结果,是软件开发文档重要的文档之一。
软件设计要求高耦合性和低内聚性是考试的重点,要知道什么是耦合,什么是内聚。
软件测试和程序调试的区别。软件测试的过程涵盖了整个软件生命周期。目的是为了发现错误而执行程序的过程。
10、从是否要执行被测试软件的角度,软件测试分为静态测试和动态测试。
11、从功能上划分,软件测试分为白盒测试和黑盒测试。
12、白盒测试是检查内部成分,方法有:逻辑覆盖测试方法,基本路径测试。
13、黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证。方法有:等价类划分法,边界值划分法,错误推测法。
程序调试的任务:诊断和改正程序中错误,它和软件测试不同,调试主要在开发阶段。
软件调试方法:强制排错法,回朔法,原因排除法。
软件维护不属于软件生命周期开发阶段的任务。
软件进行了程序调试后还要进行测试。
软件工程的主要思想是:强调在软件开发过程中需要应用工程化的原则。
软件设计中,不属于过程设计工具的是:DFD图。
结构化分析常见的工具:DFD图,DD(数据字典),判定树,判定表。
程序和软件是不同的,软件是程序、数据与相关文档的集合。
软件的开发、运行对计算机系统具有依赖性。
软件工程的三要素:工具、过程、方法。
软件生命周期中,能够准确确定软件系统必须做什么和必须具备哪些功能的阶段是:需求分析。
数据流图只含有数据流,不含有控制流。数据流图用于抽象描述一个软件的逻辑模型。
数据流的类型有两种:事务型和变换型。在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流叫做事务型数据流。
程序流程图中的箭头代表的是:控制流。
在结构化方法中,软件功能分解属于总体设计阶段。
内聚型中内聚性最强的是:功能内聚。
检查软件产品是否符合需求定义的过程是:确认测试。
软件危机:泛指在计算机软件的开发和维护过程中遇到的一系列严重的问题。
Jackson 方法是一种面向数据结构的结构化方法。
软件开发环境是全面支持软件开发全过程的软件开发工具集合。
软件需求是指用户对目标软件系统在功能、行为、性能设计约束等方面的期望。
为每一个模块确定实现算法和局部数据结构的是详细设计阶段的任务。
数据库设计基础
关系运算是考试的重点,考的多的是并和笛卡尔积。不改变属性但减少元组个数的是并。投影也是比较喜欢考的,一般的意思是从4、5个列中选出2、3个。笛卡尔积则是会增加元组的个数。
E-R图中,矩形、菱形、椭圆形等代表的意思是考试的重点。
数据库系统中,数据的物理结构不一定要和逻辑结构一致。
数据库技术的根本目标是解决数据的共享问题。
数据库系统中,用户所见的数据模式为:外模式。
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和物理设计。
两个实体间的关系是:一对一,多对多,一对多等,这种题目根据具体的题目分析。(常考题目)
数据库DB,数据库系统DBS,数据库管理系统DBMS之间的关系:DBS包含DB和DBMS。
数据库系统的核心:数据库管理系统。
10、数据独立性:是指数据与程序的互不依赖性。他包括数据的物理独立性和逻辑独立性。物理独立性是数据的物理结构(包括存储结构、存取方式)的改变,不影响数据库的逻辑结构。
11、数据的逻辑独立性是指数据库总体逻辑结构的改变,不需要相应修改应用程序。
12、用树形结构表示实体之间联系的模型是:层次模型。
13、数据库系统中修改数据模式、增加新的数据类型、改变数据间的联系等,不需要相应修改应用程序这一特点是逻辑独立性。
14、不涉及具体的硬件环境和平台,也与具体的软件环境无关的模式是:概念模型。
15、用户数据是建立在外模式的框架上的。
16、给出数据的全局逻辑结构到数据的物理存储结构间的对应关系的映射是:概念模式到内模式的映射。
17、网状模型:不加任何的限制的无向图。
18、不准关系应用不存在的元组的约束是:参照完整性约束。
19、数据库设计包括两个方面的设计内容,它们是:概念设计和逻辑设计。
20、数据库设计中的主流方法是:面向数据的设计方法。
21、数据库概念设计过程分三个步骤进行:首先选择局部应用,在局部视图设计,最后进行视图集成。
22、数据库系统中,实现各种数据管理功能的核心软件称为数据库管理系统。
23、一个关系表的行称为元组。
24、在关系模型中,数据看成是二维表,每一个二维表称为一个关系。
25、数据管理技术经历了三个阶段:人工管理、文件系统和数据库系统。
26、数据库的基本特点:数据的集成性、数据的高共享性和低冗余性(常考)、数据的独立性(常考)、数据统一管理和控制。
27、三级模式中反映用户对数据的要求的模式是:数据模型。
28、物理数据模型是数据特征的抽象,他从抽象的层次上描述了系统的静态特征、动态行为和约束条件。
29、E-R图由实体、联系、属性三个部分组成。
30、二维表中能够唯一标识元组的最小属性集称为该表的码。
31、要求关系的主键中属性不能为空的约束是:实体完整性约束。
32、数据库的设计方法有两种,一种是面向数据的设计方法,一种是面向过程的设计方法。