当前位置:文档之家› MySQL数据库原理及应用(第2版)(微课版)-习题答案

MySQL数据库原理及应用(第2版)(微课版)-习题答案

习题答案项目1 习题答案12.填空题(1)物理数据独立性(2)数据库管理系统((DBMS)(3)现实世界、信息世界、数据世界(4)码(5)一对一(1:1)、一对多(1:n)、多对多(m:n)(6)概念数据模型 E-R模型(7)逻辑数据物理数据(8)DBMS(数据库管理系统) DBA(数据库管理员)(9)关系的参照(10)θ3.简答题(1)数据模型是对现实世界的数据特征进行的抽象,来描述数据库的结构与语义。

数据模型的三要素是:数据结构、数据操作、数据约束条件。

(2)逻辑数据独立性:当模式改变时(如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变。

因而应用程序不必修改,保证了数据与程序的逻辑独立性,简称逻辑数据独立性。

物理数据独立性:当数据库的存储结构改变了(如选用了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,可以保证模式保持不变,因而应用程序也不必改变。

保证了数据与程序的物理独立性,简称物理数据独立性特定的应用程序是在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构相独立。

不同的应用程序可以共用同一外模式。

数据库的两级映像保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,使得数据库系统具有数据与程序的独立性。

(3)数据库系统由计算机硬件、数据库、数据库管理系统(及其开发工具)、数据库应用系统、数据库用户构成。

(4)DBA的职责是对使用中的数据库进行整体维护和改进,负责数据库系统的正常运行,是数据库系统的专职管理和维护人员。

系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。

数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。

应用程序开发人员负责设计和编写应用程序的程序模块,并进行测试和安装。

(6)目前比较流行的DBMS有Visual FoxPro、Access、SQL Server、MySQL、PostgreSQL 、Oracle、teradata等。

项目2 习题答案1.选择题2.填空题(1)需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施、数据的运行和维护(2)概念模型(3)E-R图(4)结构(5)完全(6)外码(7)1NF(第一范式)(8)平凡的函数依赖(8)3NF3.简答题(1)数据库的设计过程包括以下6个设计阶段:需求分析、概念设计、逻辑设计、物理设计、数据库实施、数据库运行和维护。

需求分析就是根据用户的需求收集数据,是设计数据库的起点。

概念结构设计是整个数据库设计的关键,它通过对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。

逻辑结构设计是指将概念模型转换成某个DBMS所支持的数据模型,并对其进行优化。

数据库物理设计是指为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。

在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果创建数据库(此项工作在第3章具体实现),编制与调试应用程序,组织数据入库,并进行试运行。

数据库运行与维护是指对数据库应用系统正式投入运行后,在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

需求分析、概念结构设计阶段独立于数据库管理系统;逻辑结构设计、数据库物理设计、数据库实施阶段、数据库运行与维护设计阶段依赖于数据库管理系统。

(2)需求分析的任务就是收集数据,要尽可能多地收集关于数据库要存储的数据以及将来如何使用这些数据的信息,确保收集到数据库需要存储的全部信息。

(3)概念结构设计是将需求分析得到的用户需求抽象为信息结构的过程。

概念结构设计的方法有以下4种:①自顶向下。

②自底向上。

③逐步扩张。

④混合策略。

(4)E-R模型的图形表示称为E-R图。

构成E-R图的基本要素是实体、联系、属性。

(5)E-R图集成可以把多个局部E-R图合并集成为一个整体的全局E-R图,还需要消除各种冲突和数据冗余。

E-R图集成的方法有两种:多元集成法、二元集成法。

(6)数据库逻辑设计是将概念结构转换成特定DBMS所支持的数据模型的过程。

一般的逻辑设计分为以下3步。

(1) 初始关系模式设计。

(2) 关系模式规范化。

(3) 模式的评价与改进。

(7)规则2.1 实体类型的转换:将每个实体类型转换成一个关系模式,实体的属性即为关系的属性,实体的标识符即为关系模式的码。

规则2.2 联系类型的转换:根据不同的联系类型做不同的处理。

规则2.2.1 若实体间联系是1∶1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式中加入另一个关系模式的码和联系类型的属性。

规则2.2.2 若实体间的联系是1∶n,则在n端实体类型转换成的关系模式中加入1端实体类型的码和联系类型的属性。

规则2.2.3 若实体间联系是m∶n,则将联系类型也转换成关系模式,其属性为两端实体类型的码加上联系类型的属性,而码为两端实体码的组合。

规则2.2.4 3个或3个以上的实体间的一个多元联系,不管联系类型是何种方法,总是将多元联系类型转换成一个关系模式,其属性为与该联系相连的各实体的码及联系本身的属性,其码为各实体码的组合。

规则2.2.5 具有相同码的关系可合并。

(8)数据库物理设计的内容是为一个特定的逻辑数据模型选取一个最适合应用要求的物理结构。

其设计步骤可分为以下两步:1) 确定数据库的物理结构,在关系数据库中主要指存储结构和存取方法。

2) 对物理结构进行评价,评价的重点是时间和空间效率。

4.综合题(1)出版社(出版社编号,出版社名,所在地址,联系电话)作者(编号,姓名,性别,年龄,工作单位,联系电话)出版(出版社编号, 编号,书名,出版数量,联系方式)(2)读者(读者号,姓名,地址,性别,年龄,单位)图书(书号,书名,作者,出版社)借阅(读者号,书号,借期,还期)(3) 职工(工号,姓名,性别,年龄,学历,部门号,岗位编号,基本工资,级别工资,养老金,失业金,公积金,纳税)部门(部门号,部门名称,职能)岗位(岗位编号,岗位名称,岗位等级)技能(技能编号,技能名称,技能等级)奖惩(序号,奖惩标志,项目,奖惩金额)培训课程(课程号,课程名,教材,学时)选课(工号,课程号,时间,成绩)设置(部门号,岗位编号,人数)考核(工号,技能编号,时间,地点,级别)接受(工号,序号,奖惩时间)(4) 车间(车间号,车间名,主任名)产品(产品号,产品名,单价)仓位(仓位号,地址,主任名)客户(客户号,客户名,联系人,电话,地址,税号,账号)销售员(销售员号,姓名,性别,学历,业绩)入库(车间号,产品号,仓位号,入库单号,入库量,入库日期,经手人)存储(产品号,仓位号,核对日期,核对员,存储量)出库(客户号,仓位号,产品号,出库单号,出库量,出库日期,经手人)订单(产品号,客户号,销售员号,订单号,数量,折扣,总价,订单日期)项目3 习题答案1.选择题2.简述题(略)(详细步骤或命令可参考课本P80。

)项目4 习题答案1.选择题2.简述题(略)项目5 习题答案1.选择题2.综合练习题(1)CREATE DATABASE xsxk;(2)学生表:CREATE TABLE student(sno char(10) PRIMARY KEY,sname varchar(10) ,ssex char(2) DEFAULT '男',sage int(2),sdept char(8));课程表:CREATE TABLE course(cno char(5) PRIMARY KEY,cname varchar(20) NOT NULL,xxk varchar(20));选课表:CREATE TABLE sc(sno char(10) NOT NULL,cno char(5) NOT NULL,degree numeric(5,1),CONSTRAINT A1 PRIMARY KEY(sno,cno),CONSTRAINT A2 FOREIGN KEY(sno) REFERENCES STUDENT(sno), CONSTRAINT A3 FOREIGN KEY(cno) REFERENCES COURSE(cno) );项目6 习题答案12.填空题(1)R.A=S.A(2)WHERE GROUP BY HAVING ORDER BY ASC DESC Distinct LIKE % _(下划线)(3)嵌套子查询(不相关子查询) 相关子查询(4)BETWEEN 20 AND 22(或:>=20 and age<=22)(5)πSn ame (σGrade<60(SC∞S) )(6)sc.c#=c.c#(7)UPDATE SC SET(8)DROP(9)DELETE FROM aa;3.综合练习题①SELECT COUNT(DISTINCT C#) FROM SC;②SELECT AVG(AGE) FROM S WHERE S# IN (SELECT S# FROM SC WHERE C#=‘C4’); 或:SELECT AVG(AGE) FROM S,SC WHERE S.S#=SC.S# AND C#=‘C4’;③SELECT AVG(GRADE) FROM SC WHERE C# IN (SELECT C# FROM C WHERE TEACHER=‘李文’) GROUP BY C#或:SELECT AVG(GRADE) FROM SC,C WHERE C.C#=SC.C# AND TEACHER=‘李文’GROUP BY SC.C#④SELECT SNAME,AGE FROM S WHERE SNAME LIKE ‘王%’⑤INSERT INTO STUDENT SELECT S#,SNAME,SEX FROM S WHERE EXISTS (SELECT * FROM SC WHERE S.S#=SC.S# GROUP BY S# HAVING MIN(GRADE)>=80)或:INSERT INTO STUDENT SELECT S#,SNAME,SEX FROM S WHERE SNO IN (SELECT SNO FROM SC GROUP BY S# HAVING MIN(GRADE)>=80)项目7 习题答案1.选择题2.填空题(1)一个或多个基本表或已定义的视图定义数据(2)WITH CHECK OPTION(3)视图(4)基本表(5)普通索引唯一索引(6)删除3.简答题(1)索引依赖于表建立,提供了数据库中编排表中数据的内部方法,使用索引可以从大量的数据中迅速找到所需要的数据,不再检索整个数据库,大大提高检索的效率。

相关主题