目录
第1章数据系统概述
1、数据库管理系统(Database Management System)安装于操作系统之上,是一个管理、控制数据库中各种数据库对象的系统软件。主要功能如下:
(1)数据库的建立和维护
(2)数据定义功能
(3)数据组织、存储和管理
(4)数据操作功能
(5)数据库事务管理和运行管理
(6)其他功能
2、数据库系统(Database System),是由数据库及其管理软件组成的系统。
数据库系统是为适应数据处理的需要而发展起来的一种较为理想的数据处理系统,也是一个为实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质 、处理对象和管理系统的集合体。
特点:
(1)数据的结构化
(2) 数据的共享性高,冗余度低,易扩充
(3)数据独立性高
(4)数据由DBMS统一管理和控制
3、DBA/数据库管理员职责:
1)决定数据库中的信息内容和结构
2)决定数据库中的存储结构和存取策略
3)定义数据的安全性要求和完整性约束条件
4)监控数据库的使用和运行
5)数据库的改进和重组重构
4模式(Schema):也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式(External Schema) :也称子模式(Sub schema) 或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
内模式 (Internal Schema):也称存储模式 (Storage Schema),它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
通过外模式-模式映射和模式-内模式映射这两个映射保证了数据库系统中的数据具有较高的逻辑独立性和物理独立性。
当数据库模式发生变化时,可以调整外模式/模式间的映像关系,保证面向用户的各个外模式不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与应用程序的逻辑独立性,简称数据的逻辑独立性。当数据库中数据物理存储结构改变时,即内模式发生变化,可以调整模式/内模式映像关系,保持数据库模式不变,从而使数据库系统的外模式和各个应用程序不必随之改变。这样就保证了数据库中数据与应用程序间的物理独立性,简称数据的物理独立性
5.这两种结构的区别非常明显,主要体现在下面几个方面
1)硬件环境不同
2)对安全要求不同
3)对程序架构不同
4)软件重用不同
5)系统维护不同
6)处理问题不同
7) 用户接口不同
8)信息流不同
6.略
7-11 CAAAB 12-17 BABAAA
18-25 AAAA CAAA
第2章信息与数据模型
- 信息的三种世界分别是:信息的现实世界、信息世界和信息的计算机世界这3 个领域是由客观到认识、由认识到使用管理的 3 个不同层次,后一领域是前一领域的抽象描述。信息的三种世界描述:
2.也称信息模型,按用户的观点对数据和信息建模,主要用于数据库设计。
3.实体:客观存在的实体事物。
实体型:用实体类型名和所有属性来共同表示同一类实体。
实体集:同一类型实体的集合
属性:实体所具有的某一特性
码:可以唯一标识一个实体的属性集
E-R 图:E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
4.转换原则:一个实体转换为一个关系模式。实体的属性就是关系的属性。
联系类型的转换:
1).若实体间联系是 1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式中加入另一个关系模式的码和联系类型的属性。
2.)若实体间的联系是 1:n,则在 n 端实体类型转换成的关系模式中加入1端实体类型的码和联系类型的属性。
3.若实体间联系是 m:n,则将联系类型也转换成关系模式,其属性为两端实体类型的码加上联系类型的属性,而码为两端实体码的组合。
5-9ADCDA 10-14ABABA 15-19 CCDAC 20-24BAAAA
25(1)B (2)D (3)C (4)A
26(1)D (2)D(3)C (4)B
27 答:
- 学生与课程联系类型是多对多联系。
- 课程与教师的联系类型是多对多联系。
- 学生与教师的联系类型是一对多联系
- 完善本题 E-R 图的结果如下图所示
- 对应的关系模型结构如下:
科室(科名,科地址,科电话)
病房(病房号,床位号,科室名)
医生(工作证号,姓名,职称,科室名,年龄)
病人(病历号,姓名,性别,诊治,主管医生,病房号)
- 每个关系模式的候选码如下:
科室的候选码是科名;
病房的候选码是科室名、病房号;
病房号:医生的候选码是工作证号;
病人的候选码是病历号。
(2)这个ER 图可转换4 个关系模式:
商店(商店编号,商店名,地址)
主码:商店编号
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪)
主码:职工编号 外码: 商店编号
商品(商品号,商品名,规格,单价)
主码:商品号
销售(商店编号,商品号,月销售量)
主码:商店编号,商品号
第3章关系代数与关系数据库理论
1、候选码:若关系中的某一属性或属性组的值能唯一地标识一个元组,则该属性或属性组为候选码。
主码:若一个关系中有多个候选码,则选定其中一个为主码
组合码:多个属性构成的主码
外码:关系 R 中的一个属性组,它不是 R 的主属性,但它与另一个关系 S 中的主码相对应则称这个属性组为 R 的外码或外键。
- 关系模型的完整性有三类:实体完整性,参照完整性和用户自定义完整性。
实体完整性:例如学生关系中,学号为主码,则学号的值必须唯一且非空。
参照完整性:成绩关系中,学号是外码,则学号的取值必须是学生关系中学号的有效值或取空值。
3、连接运算符是"="的连接运算称为等值连接。它是从关系 R与S的广义笛卡尔积中选取A,B 属性值相等的那些元组;自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。
4-9 DBBABA 10DBC 11-16 BCCBCC
17-22 DADCBA 23AD 24 D 25A
26 (1)不能,因为一个关系主键取值必须唯一。表中已有主键值“09088”所以违背了实体完整性
(2) 不可以,因为专业表中为专业名称设置唯一约束;插入的新记录违背了这一完整性约束
(3)不可以,参照完整性要求外键取值必须是另一个关系主键的有效值或空值教师表中的专业为外键,参照专业表中的专业号,“JK”不是专业表中的主键值,所以不可以更改。
(4)不能,因为教师表中有专业为“CS”的记录,若删除,则违背了实体完整性。
28、(1)基本的FD 有三个:
(职工编号,日期)->日营业额
职工编号->部门名
部门名 ->部门经理
R 的关键码为 (职工编号,日期)。
(2)R中有两个这样的 FD:
(职工编号,日期)->(部门名,部门经理)
职工编号->(部门名,部门经理)
可见前一个 FD 是局部依赖,所以 R 不是2NF 模式。
R 应分解成R1 (职工编号,部门名,部门经理)
R2(职工编号,日期,日营业额)
此处,R1 和 R2 都是2NF 模式
(3) R2 已是3NF 模式。
在 R1 中,存在两个FD:职工编号->部门名
部门名->部门经理
因此,“职工编号->部门经理”是一个传递依赖,R1 不是3NF 模式。
R1 应分解成 R11 (职工编号,部门名)
R12 (部门名,部门经理) 这样,p=(R11,R12,R2]是一
个3NF 模式集。
29、(1) 基本的FD 有:
教师编号->教师姓名,教师职称
系编号->系名称,系地址
课程号->课程名,学分
教师编号 ->系编号,系名称,系地址
R 的关键码为 (教师编号,课程号)。
部分依赖:教师编号->教师姓名,教师职称
课程号->课程名,学分
传递依赖:教师编号->系名称,教师编号->系地址
(2)设计不合理,存在插入异常,更新异常,删除异常和数据冗余
(3) 规范化为 R1 (教师编号,教师姓名,教师职称) R2 (系编号,系名称系地址) R3(课程号,课程名,学分)
第4章数据库设计方法
1、
1)需求分析阶段
准确了解与分析用户需求(包括数据与处理),是整个设计过程的基础,是最困难、最耗费时间的一步。
2.)概念结构设计阶段
是整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型。
3.)逻辑结构设计阶段
将概念结构转换为某个 DBMS 所支持的数据模型,对其进行优化。
4.)数据库物理设计阶段
为逻辑数据模型选取一个最适合应用环境的物理结构 (包括存储结构和存取方
5.)数据实施阶段
运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果,建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
6.)数据库运行和维护阶段
数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。
2、需求分析阶段的设计目标是通过详细调查现实世界要处理的对象 (组织、部门、企业 等),充分了解原系统 (手工系统或计算机系统)工作概况,明确用户的各种需求,然后 在此基础上确定新系统的功能。调查的内容是“数据”和“处理”,即获得用户对数据库的如下要求:
(I)信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求可以导出数据要求,即在数据库中需要存储哪些数据;
(2) 处理要求,指用户要完成 什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理 ;
(3) 安全性与完整性要求
3、数据字典是系统中各类数据描述的集合。
数据字典的内容通常包括:数据项、数据结构、数据流、数据存储、处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。
数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,