1、1第一章2简述数据、数据库、数据库管理系统、数据库应用系统的概念。答:数据是描述事物的符号记录,是信息的载体,是信息的具体表现形式。数据库就是存放数据的仓库,是将数据按一定的数据模型组织、描述和存储,能够自动进行查询和修改的数据集合。数据库管理系统是数据库系统的核心,是为数据库的建立、使用和维护而配置的软件。它建立在操作系统的基础上,位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的创建、查询、更新及各种数据控制等。凡使用数据库技术管理其数据的系统都称为数据库应用系统。3简述数据库管理系统的功能。答:数据库管理系统是数据库系统的核心软件,一般说来,其
2、功能主要包括以下 5 个方面。 (1) 数据定义和操纵功能2(2) 数据库运行控制功能(3) 数据库的组织、存储和管理(4) 建立和维护数据库(5) 数据通信接口4简述数据库的三级模式和两级映像。答:为了保障数据与程序之间的独立性,使用户能以简单的逻辑结构操作数据而无需考虑数据的物理结构,简化了应用程序的编制和程序员的负担,增强系统的可靠性。通常 DBMS 将数据库的体系结构分为三级模式:外模式、模式和内模式。模式也称概念模式或逻辑模式,是对数据库中全部数据的逻辑结构和特征的描述,是所有用户的公共数据视图。外模式也称子模式或用户模式,它是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描
3、述。内模式也称存储模式或物理模式,是对数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,一个数据库只有一个内模式。三级模式结构之间差别往往很大,为了实现这 3 个3抽象级别的联系和转换,DBMS 在三级模式结构之间提供了两级映像:外模式/模式映像,模式/内模式映像。第二章4实体的联系有哪三种?答:一对一联系(1:1)、一对多联系(1 : M)和多对多联系(M : N)。7设某工厂数据库中有四个实体集。一是“仓库”实体集,属性有仓库号、仓库面积等;二是“零件”实体集,属性有零件号、零件名、规格、单价等;三是“供应商”实体集,属性有供应商号、供应商名、地址等;四是“保管员”实体集,属性有
4、职工号、姓名等。设仓库与零件之间有“存放”联系,每个仓库可存放多种零件,每种零件可存放于若干仓库中,每个仓库存放每种零件要记录库存量;供应商与零件之间有“供应”联系,一个供应商可供应多种零件,每种零件也可由多个供应商提供,每个供应商每提供一种零件要记录供应量;仓库与保管员之间有“工作”联系,一个仓库可以有多名保管员,但一名保管员只能4在一个仓库工作。(1)试为该工厂的数据库设计一个 ER 模型,要求标注联系类型,可省略实体属性。(2)根据转换规则,将 ER 模型转换成关系模型,要求标明每个关系模式的主键和外键。答:(1)E-R 模型(2)关系模式:仓库(仓库号,仓库面积) 零件(零件号,零件名
5、,规格,单价)供应商(供应商号,供应商名,地址) 保管员1 NM 1 M NN M保管员 仓库工作 零件存放 供应商供应仓库面积仓库号供应商号地址供应商名零件号 零件名 规格职工号 姓名 库存量 供应量单价5(职工号,姓名,仓库号)库存(仓库号,零件号,库存量) 供应(供应商号,零件号,供应量)8某网上订书系统,涉及如下信息:(1)客户:客户号、姓名、地址、联系电话。(2)图书:书号、书名、出版社、单价。(3)订单:订单号、日期、付款方式、总金额。其中:一份订单可订购多种图书,每种图书可订购多本;一位客户可有多份订单,一份订单仅对应一位客户。(1)根据以上叙述,建立 ER 模型,要求标注联系类
6、型(可省略实体的属性) 。(2)根据转换规则,将 ER 模型转换成关系模型,要求标注每个关系模型的主键和外键(如果存在) 。答:(1)ER 模型出版社1 NM M客户 订单拥有 图书订购联系电话地址书号书名订单号 日期 付款方式客户号姓名数量总金额 单价6(2)关系模式:客户(客户号,姓名,地址,联系电话,订单号)图书(书号,书名,出版社,单价)订单(订单号,日期,付款方式,总金额)订购(订单号,书号,数量)第三章1关系数据模型由哪三个要素组成。答:关系数据模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。3简述关系的完整性。答:关系模型允许定义三类完整性约束:实体完整性、参照完整性
7、和用户自定义的完整性约束。 实体完整性规则要求关系中元组在组成主码的属性上不能有空值。参照完整性规则:若属性(或属性组)F 是基本关系 R 的外码,它与基本关系 S 的主码 Ks 相对应(基本关系 R 和 S 可能是相同的关系) ,则对于 R 中每个元组在 F 上的值必须为:或者取空值(F 的每个属性值均为7空值) ;或者等于 S 中某个元组的主码值。用户定义的完整性规则由用户根据实际情况对数据库中数据的内容进行的规定,也称为域完整性规则。5根据给定的关系模式进行查询。设有学生-课程关系数据库,它由三个关系组成,它们的模式是:学生 S(学号 S#,姓名 SN,所在系 SD,年龄 SA)、课程
8、C(课程号 C#,课程名 CN,先修课号 PC#)、SC(学号S#,课程号 C#,成绩 G)。请用关系代数分别写出下列查询:(1)检索学生的所有情况。S#, SN, SD, SA(S)(2)检索学生年龄大于等于 20 岁的学生姓名。SN(SA=20 (S)(3)检索先修课号为 C2 的课程号。 C#(PC#=C2 (C)(4)检索课程号 C1 的成绩为 A 的所有学生姓名。SN(C#=C1 G=A (S SC)(5)检索学号为 S1 的学生选修的所有课程名及先修课号。8CN, PC#(S#=S1 (C SC)(6)检索年龄为 23 岁的学生所选修的课程名。CN(SA=23 (C SC S)第四
9、章4要建立关于系、学生、班级、研究会等信息的一个关系数据库。规定:一个系有若干专业、每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一个宿舍区。每个学生可参加若干研究会,每个研究会有若干学生。学生参加某研究会,有一个入会年份。描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。描述班级的属性有:班号、专业名、系名、人数、入校年份。描述系的属性有:系号、系名、系办公室地点、人数。描述研究会的属性有:研究会名、成立年份、地点、人数。9试给出上述数据库的关系模式;写出每个关系的基本的函数依赖集;指出是否存在传递函数依赖,指出各关系的主码和外码。答:关系模式:学生(学号,姓名,出生
10、年月,系号,班号,宿舍区)班级(班号,专业名,系号,人数,入校年份)系(系号,系名,系办公室地点,人数)研究会(研究会名,成立年份,地点,人数)参加研究会(学号 ,研究会名 ,入会年份)学生关系的基本函数依赖集:学号(姓名,出生年月,系号,班号) ,系名宿舍区班级关系的基本函数依赖集:班号(专业名,系号,人数,入校年份)系关系的基本函数依赖集:系名(系号,系办公室地点,人数)研究会关系的基本函数依赖集:研究会名(成立年份,地点,人数)参加研究会关系的基本函数依赖集:(学号 ,研究10会名)入会年份5设有关系模式 R(运动员编号,姓名,性别,班级,班主任,项目号,项目名,成绩)如果规定:每名运动
11、员只能代表一个班级参加比赛,每个班级只能有一个班主任;每名运动员可参加多个项目,每个比赛项目也可由多名运动员参加;每个项目只能有一个项目名;每名运动员参加一个项目只能有一个成绩。根据上述语义,回答下列问题:(1)写出关系模式 R 的主关键字;(2)分析 R 最高属于第几范式,说明理由。(3)若 R 不是 3NF,将其分解为 3NF。答:(1)关系模式 R 的主关键字是运动员编号,项目号。(2)R 最高属于第一范式。 因为存在着姓名,性别,班级和项目名对主关键字运动员编号,项目号的部分函数依赖,没有达到2NF。 (3)首先分解为 2NF:R1(运动员编号,姓名,性别,班级,班主任),R2(项目号,项目名),R3 (运动员编号,项目