数据库课后答案
- 格式:doc
- 大小:99.00 KB
- 文档页数:23
第一章数据库系统概述选择题1实体-联系模型中,属性是指(C)A.客观存在的事物B.事物的具体描述C.事物的某一特征D.某一具体事件2对于现实世界中事物的特征,在E-R模型中使用(A)A属性描述B关键字描述C二维表格描述D实体描述3假设一个书店用这样一组属性描述图书(书号,书名,作者,出版社,出版日期),可以作为“键”的属性是(A)A书号B书名C作者D出版社4一名作家与他所出版过的书籍之间的联系类型是(B)A一对一B一对多C多对多D都不是5若无法确定哪个属性为某实体的键,则(A)A该实体没有键B必须增加一个属性作为该实体的键C取一个外关键字作为实体的键D该实体的所有属性构成键填空题1对于现实世界中事物的特征在E-R模型中使用属性进行描述2确定属性的两条基本原则是不可分和无关联3在描述实体集的所有属性中,可以唯一的标识每个实体的属性称为键4实体集之间联系的三种类型分别是1:1 、1:n 、和m:n5数据的完整性是指数据的正确性、有效性、相容性、和一致性简答题一、简述数据库的设计步骤答:1需求分析:对需要使用数据库系统来进行管理的现实世界中对象的业务流程、业务规则和所涉及的数据进行调查、分析和研究,充分理解现实世界中的实际问题和需求。
分析的策略:自下而上——静态需求、自上而下——动态需求2数据库概念设计:数据库概念设计是在需求分析的基础上,建立概念数据模型,用概念模型描述实际问题所涉及的数据及数据之间的联系。
3数据库逻辑设计:数据库逻辑设计是根据概念数据模型建立逻辑数据模型,逻辑数据模型是一种面向数据库系统的数据模型。
4数据库实现:依据关系模型,在数据库管理系统环境中建立数据库。
二、数据库的功能答:1提供数据定义语言,允许使用者建立新的数据库并建立数据的逻辑结构2提供数据查询语言3提供数据操纵语言4支持大量数据存储5控制并发访问三、数据库的特点答:1数据结构化。
2数据高度共享、低冗余度、易扩充3数据独立4数据由数据库管理系统统一管理和控制:(1)数据安全性(2)数据完整性(3)并发控制(4)数据库恢复第二章关系模型和关系数据库选择题1把E-R模型转换为关系模型时,A实体(“一”方)和B实体(“多”方)之间一对多联系在关系模型中是通过(A)来实现的A将A关系的关键字放入B关系中B建立新的关键字C建立新的联系D建立新的实体2关系S和关系R集合运算的结果中既包含S中元组也包含R中元组,但不包含重复元组,这种集合运算称为(A)A并运算B交运算C差运算D积运算3设有关系R1和R2,经过关系运算得到结果S,则S是一个(D)A字段B记录C数据库D关系4关系数据操作的基础是关系代数。
数据库原理课后习题答案码:工程号+材料号操作异常:数据冗余,插入异常,删除异常,修改异常分析原因:(工程号,材料号)?开工日期工程号?开工日期存在部分函数依赖,不满足2NF(工程号,材料号)?单价材料号?单价存在部分函数依赖,不满足2NF分解为:R1(工程号,材料号,数量)R2(材料号,单价)R3(工程号,开工日期,完工日期)第七章一、试说明事务的概念及四个特征。
答:事务是用户定义的数据操作系列,这些操作可作为一个完整的工作单元一个事务内的所有语句被作为一个整体,要么全部执行,要么全部不执行。
四个特征:原子性、一致性、隔离性和持续性三、在数据库中为什么要有并发控制机制?答:数据库系统一个明显的特点是多个用户共享数据库资源,尤其是多个用户可以同时存取相同数据。
在这样的系统中,在同一时刻同时运行的事务可达数百个。
若对多用户的并发操作不加控制,就会造成数据库存、取的错误,破坏数据的一致性和完整性。
所以数据库中要有并发控制机制。
四、并发控制的措施是什么?答:在数据库环境下,进行并发控制的主要方式是使用封锁机制,即加锁。
具体的控制由锁的类型决定。
基本的锁类型有两种:排它锁(X锁)和共享锁(S锁)。
共享锁:若事务T给数据对象A加了S锁,则事务T可以读A,但不能修改A,其他事务只能再给A加S锁,而不能加X锁,直到T释放了A上的S锁为止。
排他锁:若事务T给数据对象A加了X锁,则允许T读取和修改A,但不允许其他事务再给A加任何类型的锁和进行任何操作。
五、设有3个事务:T1、T2和T3,其所包含的动作为:T1:A=A+2T2:A=A某2T3:A=A某某2设A的初值为1,若这三个事务运行并行执行,则可能的调度策略有几种?A最终的结果分别是什么?答:6种策略。
分别是T1T2T3,T1T3T2,T2T1T3,T2T3T1,T3T1T2,T3T2T1结果分别是六、当一些事务对段数据加了S锁之后,在此事务释放锁之前,其他事物还可以对此段数据添加什么锁?答:S锁七、什么是死锁?如何预防死锁?答:如果事务T1封锁了数据R1,T2封锁了数据R2,然后T1又请求封锁数据R2,由于T2已经封锁了数据R2,因此T1等待T2释放R2上的锁,然后T2又请求封锁数据R1,由于T1封锁了数据R1,因此T2也只能等待T1释放R1上的锁.这样就会出现T1等待T2先释放R2上的锁,而T2又等待T1先释放R1上的锁的局面,此时T1和T2都在等待对方先释放锁,因而形成死锁。
数据库第三版课后习题答案数据库第三版课后习题答案在学习数据库的过程中,课后习题是巩固知识的重要方式。
本文将为大家提供数据库第三版课后习题的答案,希望对大家的学习有所帮助。
第一章:数据库基础1. 数据库是什么?答:数据库是一个存储、管理和操作数据的集合。
它可以用来存储和检索大量数据,并提供数据的安全性和完整性。
2. 数据库管理系统(DBMS)的作用是什么?答:DBMS是一种软件,用于管理数据库。
它提供了对数据库的访问和操作,包括数据的增删改查、数据安全性和完整性的控制、数据备份和恢复等功能。
3. 数据库系统的组成部分有哪些?答:数据库系统由数据库、数据库管理系统和应用程序组成。
数据库是存储数据的仓库,数据库管理系统用于管理和操作数据库,应用程序用于访问和处理数据库中的数据。
4. 什么是关系型数据库?答:关系型数据库是一种基于关系模型的数据库。
它使用表格(称为关系)来组织和存储数据,每个表格包含行和列,行表示记录,列表示属性。
第二章:SQL基础1. SQL是什么?答:SQL(Structured Query Language)是一种用于管理关系型数据库的语言。
它可以用来创建、修改和查询数据库中的数据。
2. SQL语句分为哪几类?答:SQL语句分为数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)和数据控制语言(DCL)四类。
3. 什么是DDL语句?举例说明。
答:DDL语句用于定义数据库的结构和模式,包括创建表格、修改表格结构、删除表格等。
例如,创建表格的语句如下:CREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(50),age INT);4. 什么是DML语句?举例说明。
答:DML语句用于操作数据库中的数据,包括插入、更新和删除数据。
例如,插入数据的语句如下:INSERT INTO student (id, name, age) VALUES (1, 'Tom', 20);第三章:关系数据库设计1. 什么是关系数据库设计?答:关系数据库设计是指根据实际需求,设计数据库的结构和模式。
数据库基础与应用课后习题答案数据库基础与应用课后习题答案引言:数据库是现代信息系统中不可或缺的一部分,它可以存储和管理大量的数据,并提供高效的数据检索和处理功能。
在学习数据库基础与应用课程时,课后习题是巩固知识的重要方式。
本文将为大家提供一些数据库基础与应用课后习题的答案,希望能帮助大家更好地理解和掌握相关知识。
一、选择题答案1. B2. A3. C4. D5. B6. C7. A8. D9. B10. C二、填空题答案1. 数据库管理系统(DBMS)2. 关系型数据库3. 表4. 主键5. SQL(Structured Query Language)6. SELECT * FROM table_name7. WHERE8. ORDER BY9. UPDATE table_name SET column_name = value WHERE condition10. DELETE FROM table_name WHERE condition三、简答题答案1. 数据库是指按照数据结构来组织、存储和管理数据的仓库,它可以用来存储和管理各种类型的数据,包括文本、图像、音频等。
数据库的特点包括数据的共享性、冗余度的降低、数据的独立性等。
2. 数据库管理系统(DBMS)是指用于管理数据库的软件系统,它提供了对数据库的创建、查询、更新和删除等操作的支持。
常见的DBMS包括MySQL、Oracle、SQL Server等。
3. 关系型数据库是一种基于关系模型的数据库,其中的数据以表的形式组织。
每个表包含多个行和列,行表示记录,列表示字段。
关系型数据库的优点包括数据结构清晰、数据之间的关系明确等。
4. 主键是用于唯一标识表中每条记录的字段,它具有唯一性和非空性。
主键的作用是确保表中的每条记录都能被唯一标识,便于数据的检索和更新。
5. SQL(Structured Query Language)是一种用于管理关系型数据库的语言,它包括数据定义语言(DDL)、数据查询语言(DQL)、数据操纵语言(DML)等。
(完整版)数据库课后题参考答案学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E —R 模型。
(2)将E —R 模型转换为关系模型.2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E —R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名; ② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名)医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:就医病房号医生编号病人编号医生姓名位置负责①、''(外科位置医生姓名=∏σ() ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ()第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序.下面那个产品最能满足这种需求?( )A DB2企业服务器版B DB2工作组服务器版C DB2连接器企业版D DB2通用开发版 答案:D4、下面那种产品不被认为是DB2服务器? ( ) A DB2快速版B DB2工作组服务器版C DB2个人版D DB2企业服务器版 答案:C5、下面那两种工具可以向数据库发出SQL语句进行查询? ()A 命令窗口B 命令中心C 命令行处理器D 命令处理器E 控制中心答案:B、C6、下面那种情况下,健康中心会发出报警:()A 表中的一行被删除B 运行LOAD工具C 当性能指标超过了预先定义的范围D 一条SQL语句由于语法错误而没有执行成功,并报错.答案:C二、填空题:1.DB2工具①可以用来在DB2中调度SQL脚本定期执行。
第1章思考与实践1.选择题(1) 从数据库的整体结构看,数据库系统采用的数据模型有(C )。
A.网状模型、链状模型和层次模型 B.层次模型、网状模型和环状模型C.层次模型、网状模型和关系模型 D.链状模型、关系模型和层次模型(2) 数据库系统的构成为:数据库、计算机系统、用户和( D )。
A.操作系统 B.文件系统 C.数据集合 D.数据库管理系统(3) 用二维表形式表示的数据模型是( B )。
A.层次模型 B.关系模型 C.网状模型 D.网络模型(4) 关系数据库管理系统的3种基本关系运算不包括( A )。
A.比较 B.选择 C.连接 D.投影(5) 数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是( B )。
A.DBMS包括DB和DBS B.DBS包括DB和DBMSC.DB包括DBS和DBMS D.DB、DBS和DBMS是平等关系(6) 在关系理论中,把二维表表头中的栏目称为( D )。
A.数据项 B.元组 C.结构名 D.属性名(7) 下面有关关系数据库主要特点的叙述中,错误的是( D )。
A.关系中每个属性必须是不可分割的数据单元B.关系中每一列元素必须是类型相同的元素C.同一关系中不能有相同的字段,也不能有相同的记录D.关系的行、列次序不能任意交换,否则会影响其信息内容(8) 以一定的组织方式存储在计算机存储设备上,能为多个用户所共享的与应用程序彼此独立的相关数据的集合称为( A )。
A.数据库 B.数据库系统 C.数据库管理系统 D.数据结构(9) 设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是( B )。
A.m∶n B.1∶m C.m∶k D.1∶1(10) 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过( B )。
A.候选键 B.主键 C.外键 D.超键2.填空题(1) 关系数据库中每个关系的形式是(主外键引用0020 )。
数据库原理与技术课后答案1. 简述数据库管理系统(DBMS)的作用和优点。
数据库管理系统是一种软件工具,用于管理和控制数据库的创建、维护、访问和使用等各个方面。
其主要作用如下:- 数据组织:DBMS通过定义数据结构和类型,实现数据的有序组织和存储,提高数据的组织性和结构性。
- 数据共享:DBMS可以为多个用户提供并发访问数据库的能力,实现数据共享和协同工作。
- 数据安全:DBMS提供了权限管理、数据备份和恢复等功能,保护数据库的安全性和一致性。
- 数据一致性:DBMS能够确保数据的一致性,维护数据库中各个数据之间的联系和完整性。
- 数据查询和处理:DBMS提供了灵活的查询语言和数据处理功能,方便用户对数据库进行查询、分析和操作。
DBMS的优点包括:- 数据共享和协作:多个用户可以同时访问和使用数据库,提高了工作效率和资源利用率。
- 数据一致性和完整性:DBMS确保数据库中的数据一致性和完整性,避免了数据冗余和错误。
- 数据安全和可靠性:DBMS提供了权限管理、数据备份和恢复等功能,保护数据库的安全和可靠性。
- 数据的易管理性和可维护性:DBMS提供了管理和维护数据库的工具和功能,简化了数据管理和维护的工作。
- 数据的高效访问和处理:DBMS提供了高效的数据访问和处理能力,提高了数据的查询和处理效率。
2. 简述关系型数据库和非关系型数据库的特点和应用场景。
关系型数据库特点:- 数据存储:关系型数据库使用表格形式存储数据,表格由行和列组成,每行表示一个记录,每列表示一个字段。
- 结构化数据:关系型数据库要求数据先定义表结构,再进行数据录入,确保数据的一致性和完整性。
- 支持SQL查询:关系型数据库使用结构化查询语言(SQL)进行数据查询和操作,具有较高的查询灵活性和表达能力。
- ACID特性:关系型数据库支持ACID(原子性、一致性、隔离性和持久性)特性,保证数据的一致性和可靠性。
关系型数据库应用场景:- 需要严格的数据一致性和完整性的应用,如金融系统、电子商务系统等。
第1章习题参考答案1.思考题(1)什么是数据库、数据库管理系统、数据库系统?它们之间有什么联系?答:数据库是存贮在计算机内的有结构的数据集合;数据库管理系统是一个软件,用以维护数据库、接受并完成用户对数据库的一切操作;数据库系统指由硬件设备、软件系统、专业领域的数据体和管理人员构成的一个运行系统。
(2)当前,主要有哪几种新型数据库系统?它们各有什么特点?用于什么领域,试举例说明?答:主要有:分布式数据库、面向对象数据库、多媒体数据库、数据仓库技术、空间数据库。
(3)什么是数据模型?目前数据库主要有哪几种数据模型?它们各有什么特点?答:数据模型是一组描述数据库的概念。
这些概念精确地描述数据、数据之间的关系、数据的语义和完整性约束。
很多数据模型还包括一个操作集合。
这些操作用来说明对数据库的存取和更新。
数据模型应满足3方面要求:一是能真实地模拟现实世界;二是容易为人们理解;三是便于在计算机上实现。
目前在数据库领域,常用的数据模型有:层次模型、网络模型、关系模型以及最近兴起的面向对象的模型。
(4)关系数据库中选择、投影、连接运算的含义是什么?答:1)选择运算:从关系中筛选出满足给定条件的元组(记录)。
选择是从行的角度进行运算,选择出的记录是原关系的子集。
2)投影运算:从关系中指定若干个属性(字段)组成新的关系。
投影是从列的角度进行运算,得到的新关系中的字段个数往往比原关系少。
3)连接运算:将两个关系按照给定的条件横向拼接成新的关系。
连接过程是通过两个关系中公有的字段名进行的。
(5)关键字段的含义是什么?它的作用是什么?答:一个关系中可以确定一个字段为关键字段,该字段的值在各条记录中不能有相同的值。
(如:门牌号码);关键字段的作用主要是为建立多个表的关联和进行快速查询。
(6)什么是E-R图?E-R 图是由哪几种基本要素组成?这些要素如何表示?答:E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
第一章习题答案1.1 选择题1. A2. C3. C4. B5. C6. A7. C8. B9. D 10. A 11. D 12. A 13. A1.2 填空题数据数据的逻辑独立性数据的物理独立性层次数据模型,网状数据模型,关系数据模型能按照人们的要求真实地表示和模拟现实世界、容易被人们理解、容易在计算机上实现实体、记录属性、字段码域一对一、一对多、多对多E-R模型E-R模型层次模型、网状模型、关系模型数据操作、完整性约束矩形、菱形、椭圆形层次模型、一对多网状模型关系模型关系外模式、模式、内模式三级模式、两级映像外模式、模式、内模式数据、程序数据逻辑、数据物理DBMS数据库管理系统、DBA数据库管理员1.4 综合题2.注:各实体的属性省略了3.第二章习题答案1.1 单项选择题1. C2. A3. B4. C5. C6. D7. A8. B1.2 填空题集合2. 能唯一标识一个实体的属性系编号, 学号,系编号关系, 元组, 属性关系模型,关系, 实体, 实体间的联系投影1.4 综合题1. πsnoσcno=’2’SC2. πsnoσcname=’信息系统’SCCOURSE3. πsno,SNAME,SAGESTUDENT第三章习题答案1.1select from jobs1.2select emp_id,fname+'-'+lname as 'Name' from employee1.3select emp_id,fname+'-'+lname as 'Name',Yeargetdate-Yearhire_date as 'worke time' from employee order by 'worke time'2.1select from employee where fname like 'f%'2.2select from employee where job_id='11'2.3select emp_id,fname+'-'+lname as 'Name', Yeargetdate-Yearhire_date as worketime from employeewhere Yeargetdate-Yearhire_date >5order by worketime2.4select from employee where castjob_id as integer>=5 and castjob_id as integer<=8 2.5select from employee where fname='Maria'2.6select from employee where fname like '%sh%' or lname like '%sh%'3.1select from sales where ord_date <'1993-1-1'4.1select distinct bh, zyh from stu_info wherebh inselect bh from stu_infogroup by bhhaving count>30 and count<40order by bh或者是select bh,zyh from stu_infogroup by zyh,bhhaving countbh>30 and countbh<40order by bh4.2select from gbanwhere bh like '计%'4.3select from gfiedwhere zym like '%管理%'4.4select xh,xm,zym,stu_info.bh,rxsj from stu_info,gfied,gban where nl>23and stu_info.zyh=gfied.zyh and stu_info.bh=gban.bh4.5select zyh,count from gbanwhere xsh='03'group by zyh第四章习题答案4.1 单项选择题:B 2、A 3、C 4、A 5、A 6、C 7、C 8、D 9、B 10、A 11、C或B,即书上121页例题中from的写法12、A 13、C 14、C 15、C4.2 填空题:drop tablealter table add <列名或约束条件>with check option基本表基本表distinct group by roder by数据定义数据操纵数据控制distinctlike % _自含式嵌入式10、order by asc desc4.3 综合题1、SELECT XH, XM, ZYM, BH, RXSJFROM STU_INFO, GFIEDWHERE STU_INFO.ZYH = GFIED.ZYH AND NL > 23 AND XBM = '男'2、SELECT ZYM 专业名, count 人数 FROM STU_INFO, GFIEDWHERE STU_INFO.XSH = '03' AND STU_INFO.ZYH = GFIED.ZYHGROUP BY ZYM注意:该题目中给出的条件XSH = '03'中的03代表的是“控制科学与工程”学院,信息学院的代码是12,大家可根据具体情况来做该题;3、SELECT bh,count as 人数 FROM STU_INFO GROUP BY bh4、SELECT XH, XM, XBM, BH FROM STU_INFOWHERE ZYH INSELECT ZYHFROM STU_INFOWHERE XM = '李明'ORDER BY XH5、SELECT DISTINCT GCOURSE.KCH, KM FROM STU_INFO, XK, GCOURSEWHERE XK.KCH = GCOURSE.KCH AND STU_INFO.XSH = '12'AND STU_INFO.XH = XK.XH该题中设计到的课程名称只有在GCOURSE表中存在,所以在题目开始的几个表中还应填加该表;另外把信息学院的代码改为12;6、SELECT COUNTDISTINCT KCH AS 选课门数, AVGKSCJ AS 平均成绩FROM STU_INFO, XKWHERE STU_INFO.XH = XK.XH AND XSH = '12'7、SELECT DISTINCT STU_INFO.XH, XM, BH, ZYM, KMFROM STU_INFO, XK, GFIED, GCOURSEWHERE KSCJ > 85 AND STU_INFO.XH = XK.XH AND XK.KCH = GCOURSE.KCH AND STU_INFO.ZYH = GFIED.ZYHORDER BY ZYM, BH, STU_INFO.XH8、SELECT STU_INFO.XH, XM, XSM, ZYM, BH, PYCCMFROM STU_INFO, XK, GDEPT, GFIEDWHERE KKNY = '20011' AND STU_INFO.XH = XK.XH AND STU_INFO.XSH = GDEPT.XSH AND STU_INFO.ZYH = GFIED.ZYHGROUP BY STU_INFO.XH, XM, XSM, ZYM, BH, PYCCMHAVING COUNT > 109、SELECT DISTINCT bhFROM STU_INFO10、DELETE FROM STU_INFOWHERE XH LIKE '2000%'或DELETE FROM STU_INFOWHERE LEFTXH,4 = '2000'11、ALTER TABLE STU_INFOADD BYSJ varchar812、UPDATE XKSET KSCJ = 60WHERE KSCJ BETWEEN 55 AND 59 andXH inSELECT xhFROM stu_infoWHERE zyh = '0501'andKCH inSELECT kchFROM gcourseWHERE km = '大学英语'前面已经考虑到在该题目中应该加入学生课程信息表GCOURSE13、UPDATE GCOURSESET KCXF=6WHERE KCH = '090101'14、CREATE TABLE CCOURSEKCH char6,KM varchar30,KCYWM varchar3015、CREATE VIEW ISE ASSELECTFROM STU_INFOWHERE XSH=’12’第五章课后答案5.11~7 BABABCB5.21 使属性域变为简单域消除非主属性对主关键字的部分依赖消除非主属性对主关键字的传递依赖2 平凡函数依赖3 Y也相同唯一的Y值5.31 函数依赖:P136定义5.1部分函数依赖:P138定义5.4完全函数依赖:P138定义5.4传递函数依赖:P138定义5.51NF:P139定义5.62NF:P141定义5.73NF:P142定义5.8BCNF:P144定义5.9在全码关系中R〈U,F〉中若存在这样的码X,属性组Y及非主属性Z 使得X→Y, Y→Z成立,所以全码关系R〈U,F〉∈3NF;在全码关系R〈U,F〉中,对于R中的函数依赖,若X→Y且X必含有码,所以全码关系R∈BCNF 2 1 R的码是Sno,Cno,R是1NF,因为Teacher和Title属性部分函数依赖于码Sno,Cno,所以R∈1NF2SCSno,Cno,GradeCTCno,teacher TTTeacher,title3 D->B C->A4 需求分析需求分析是数据库设计的第一个阶段,从数据库设计的角度来看,需求分析的任务是对现实世界要处理的对象组织、部门、企业等进行详细的调查了解,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能;概念结构设计阶段将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计;简单地说数据库概念结构设计的任务就是根据需求分析所确定的信息需求,建立信息模型;如E-R模型;逻辑结构设计阶段数据库逻辑结构设计的任务是把概念结构设计阶段所得到的与DBMS无关的数据模式,转换成某一个DBMS所支持的数据模型表示的逻辑结构;数据库物理设计阶段数据库物理设计是对给定的关系数据库模式,根据计算机系统所提供的手段和施加的限制确定一个最适合应用环境的物理存储结构和存取方法数据库实施阶段在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运行;在数据库系统运行过程中必须不断地对其进行评价、调整与修改;包括:数据库的转储和恢复、数据库的安全性和完整性控制、数据库性能的监督、分析和改进、数据库的重组织和重构造;P149最后一段ER图是用来描述某一组织单位的概念模型,提供了表示实体、属性和联系的方法;构成ER图的基本要素是实体、属性和关系;实体是指客观存在并可相互区分的事特;属性指指实体所具有的每一个特性;商店商店编号,商店名,地址,电话码:商店编号顾客顾客编号,姓名,性别,家庭住址,出生年月码:顾客编号消费商店编号,顾客编号,消费金额码:商店编号,顾客编号第六章习题答案6.1 单项选择题1、A2、D3、D4、D5、B6、D7、C6.2 填空题1、原子性一致性隔离性持续性 ACID2、软故障硬故障3、静态动态4、丢失修改不可重复读读“脏”数据5、自主存取控制强制存取控制6、实体完整性约束参照完整性约束用户自定义完整性约束6.4 综合题create table 读者借书证号 char10 primary key,姓名 varchar10 not null,年龄 tinyint not null,所在院系 varchar20 not nullcreate 图书图书号 char8 primary key,书名 varchar20 not null,作者 varchar10 not null,出版社 varchar30 not null,价格 real not null check价格>0 and 价格<=120create 借阅借书证号 char10 not null,图书号 char8 not null,借阅日期 datetime not null,primary key借书证号, 图书号,foreign key借书证号 references 读者借书证号,foreign key图书号 references 图书图书号实验4 答案Select xh,xm,xbm from stu_info,gdept where stu_info.xsh=gdept.xsh and gdept.xsm=’信息科学与工程’或 Select xh,xm,xbm from stu_info where xsh=select xsh from gdept where xsm=’信息科学与工程’Select stu_info.xh,xm,km from stu_info,xk,gcourse where stu_info.xh=xk.xh and xk.kch=gcourse.kch and kscj>85Select xh,xm,xsm from stu_info,gdept where stu_info.xsh=gdept.xsh and xh like ‘2000%’Select xh, xm from stu_info where xh in select xh from xk where kch=’090101’ and kscj<60或 select stu_info.xh,xm from stu_info,xk where stu_info.xh=xk.xh and kch=’090101’ and kscj<605. select stu_info.xh,xm,km from stu_info,xk,gcourse where stu_info.xh=xk.xh and xk.kch=gcourse.kch and xsh=’12’ and kscj<606. select stu_info.xh,xm,xsm from stu_info,xk,gdept where stu_info.xsh=gdept.xsh and stu_info.xh=xk.xh and kkny=’20011’ group by stu_info.xh,xm,xsm having count>=10实验5 答案1、2题参考实验4答案3. Select xh,xm,xbm,bh from stu_info where zyh in select zyh from stu_info where xm=’李明’ order by xh实验6答案Create view num_ban as select countdistinct bh from stu_infoCreate view ban as select distinct bh from stu_infoCreate view is_stu as select xm,xbm,bh from stu_info where xsh=’01’ orxsh=’02’Create view zhang_stu as select from stu_info where xsh=’01’ and xm like ‘张%’或 Create view zhang_stu as select from stu_info,gdept where xsm=’材料科学与工程’ and xm like ‘张%’ and stu_info.xsh=gdept.xsh8. Create view 材0168 as select stu_info.,xk. from stu_info,xk where bh=’材0168’ and stu_info.xh=xk.xhCreate view gaoshu _stu as select xm from stu_info,xk,gcourse where stu_info.xh=xk.xh and gcourse.kch=xk.kch and km=’高等数学’或 Create view gaoshu _stu as select xm from stu_info where xh inselect xh from xk where kch =select kch from gcourse where km=’高等数学’。
数据库课后习题答案第一章1.数据(DB):数据实际上是描述事物的符号纪录。
2.数据库: 数据库实际上是长期存储在计算机内的有组织的、可共享的数据集合。
3.从文件系统的视角上看去,文件是无结构的,文件只是一个字节流,因此,我们经常把文件叫做流式文件,实际上文件的数据是有结构的,数据的结构需要程序员通过编写程序来建立和维护。
4.数据库应用可以分为两大类:联机事务处理(OLTP),联机分析处理(OLAP).联机事务处理解决了组织结构业务自动化问题,而联机分析处理帮助管理层更好的分析组织结构的运站情况。
5. 数据库管理系统(DBMS):数据库管理系统是一类重要的软件,由一组程序组成。
其主要功能是完成对数据库的定义、数据操作。
提供给用户一个简明的接口,实现事务处理等。
6.数据库管理系统的基本功能:数据的定义功能数据操作功能数据库的运行和管理数据库的建立和维护功能7.数据库管理系统由两大部分组成:查询处理器存储管理器8.层次结构:应用层语言翻译层数据存取层数据存储层操作系统数据库9. 数据库系统:数据库系统是基于数据库的计算机应用的系统,有四部分组成数据库数据管理系统应用系统用户。
10. 数据库管理员的职责:(1)决定数据库中要存储的数据及数据结构(2)决定数据库的存储结构和存取策略(3)保证数据的安全性和完整性(4)监控数据库的使用和运行(5)数据库的改进和重组重构11.数据模型的三要素:数据结构数据操作完整性约束12. 数据结构是所研究的对象的类型的集合,这些对象是数据库的组成成分,他们包含两类:一类是与数据之间联系有关的对象。
一类是与数据之间联系有关的对象。
13. 数据操作:数据库主要有检索和更新(插入、删除、修改)两大类操作。
14.在关系模型中任何关系都要满足实体完整性和参照完整性。
15.三种数据模型:概念模型逻辑模型物理模型逻辑模型中有:层次模型网状模型关系模型面向对象模型对象关系模型其中层次模型和网状模型统称为非关系模型。
《数据库系统及应用》(第二版)习题解答习题一1.什么是数据库?数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
2.简要概述数据库、数据库管理系统和数据库系统各自的含义。
数据库、数据库管理系统和数据库系统是三个不同的概念,数据库强调的是相互关联的数据,数据库管理系统是管理数据库的系统软件,而数据库系统强调的是基于数据库的计算机应用系统。
3.数据独立性的含义是什么?数据独立性是指数据的组织和存储方法与应用程序互不依赖、彼此独立的特性。
这种特性使数据的组织和存储方法与应用程序互不依赖,从而大大降低应用程序的开发代价和维护代价。
4.数据完整性的含义是什么?保证数据正确的特性在数据库中称之为数据完整性。
5.简要概述数据库管理员的职责。
数据库管理员的职责可以概括如下:(1)首先在数据库规划阶段要参与选择和评价与数据库有关的计算机软件和硬件,要与数据库用户共同确定数据库系统的目标和数据库应用需求,要确定数据库的开发计划;(2)在数据库设计阶段要负责数据库标准的制定和共用数据字典的研制,要负责各级数据库模式的设计,负责数据库安全、可靠方面的设计;(3)在数据库运行阶段首先要负责对用户进行数据库方面的培训;负责数据库的转储和恢复;负责对数据库中的数据进行维护;负责监视数据库的性能,并调整、改善数据库的性能,提高系统的效率;继续负责数据库安全系统的管理;在运行过程中发现问题、解决问题。
6.文件系统用于数据管理存在哪些明显的缺陷?文件系统用于数据管理明显存在如下缺陷:(1)数据冗余大。
这是因为每个文件都是为特定的用途设计的,因此就会造成同样的数据在多个文件中重复存储。
(2)数据不一致性。
这往往是由数据冗余造成的,在进行更新时,稍不谨慎就会造成同一数据在不同文件中的不一致。
(3)程序和数据之间的独立性差。
应用程序依赖于文件的存储结构,使得若修改文件的存储结构则必须修改程序。
(4)数据联系弱。
文件与文件之间是独立的,文件之间的联系必须通过程序来构造。
因此,文件系统是一个不具有弹性的、无结构的数据集合,不能反映现实世界事物之间的联系。
习题二1.数据的三种范畴的含义是什么?数据需要我们的认识、理解、整理、规范和加工,然后才能存放到数据库中。
数据从现实生活进入到数据库实际经历了现实世界阶段(认识、理解)、信息世界阶段(规范、提升)和机器世界阶段(管理),我们也把之称为数据的三种范畴,数据在三种范畴中的概念、术语都有些不同。
2.对以下问题分析实体之间的联系,并分别画出E-R图:略3.试述为什么要讨论实体之间的联系类型?实体之间的联系类型决定了数据库设计时的结果,与数据库的设计质量密切相关。
4.多对多联系如何转换成一对多联系?并举例说明。
通过引入一个表示联系的实体,将原来两个实体之间的一个多对多的联系转换成分别与表示联系的实体之间的两个一对多的联系。
例如,仓库和材料两个实体之间存在着多对多的联系,即一个仓库可以存放多种材料,一种材料可以存放在多个仓库;通过引入一个库存实体转换为仓库与库存之间的一对多联系和材料与库存之间的一对多联系。
5.解释连接陷阱的概念,在操作数据库时如何避免连接陷阱?所谓连接陷阱就是误认为本来不存在联系的两个实体之间存在联系,从而强行进行连接操作,自然得到错误的结果。
为了避免连接陷阱,必须明确实体之间的联系和联系类型,只在有联系的实体之间进行关联操作。
6.传统的三大数据模型是哪些?它们分别是如何表示实体之间的联系的?传统的三大数据模型是层次模型、网状模型和关系模型。
层次模型用层次结构表示联系,它的典型代表IMS用层次型表示联系;网状模型用网状结构表示联系,它的典型代表CODASYL用系表示联系;关系模型用关系表示联系。
7.解释存储数据独立性和概念数据独立性的区别。
存储数据独立性强调的是应用程序与数据的存储结构相互独立的特性,即修改数据的存储方法或数据结构时不影响应用程序;而概念数据独立性强调的是应用程序与数据的概念结构相互独立的特性,即修改概念结构中的字段时不影响应用程序。
8.为什么说概念数据库和外部数据库物理上并不真正存在?只有存储数据库是物理上存在的数据库,概念数据库是存储数据库的抽象,它反映了数据库的全局逻辑结构;而外部数据库是概念数据库的部分抽取,它反映了数据库的局部逻辑结构。
9.说明在DBMS中存储模式、概念模式和外部模式的作用。
存储模式描述了数据库的存储结构,它包括对存储数据库中每个文件以及字段的描述,包括用于实现辅助关键字或存储文件间联系的指针字段的细节。
存储数据库利用存储模式组织和存取存储数据库中的文件。
如果要修改存储数据库的结构(例如,用倒排文件代替多链表),那么仅仅需要把这些修改反映在存储模式中,以使数据库存储系统能够操作新的存储数据库。
按这种方法,数据库管理系统可以提供存储(物理)数据独立性。
概念模式是对概念数据库的描述,它包括对概念文件及概念文件之间联系的描述。
概念数据库不包含真正的数据,一切都是由存储数据库决定的。
外部模式则是对外部数据库的描述,它需要说明外部文件、构成外部文件的字段及这些外部文件之间的联系。
数据库管理系统提供了外部模式与概念模式之间的映象以及概念模式与存储模式之间的映象,使用户通过外部数据库或概念数据库来操作存储数据库。
习题三1.解释属性与值域的区别。
属性是二维表中的列,而值域是列或属性的取值范围。
2.关系模型的三个组成部分是什么?关系数据模型包括关系数据结构、关系操作集合和关系完整性约束三个重要因素。
3.对关系模型的操作都包括哪些?关系数据模型中的操作包括:(1)传统的集合运算:并(Union)、交(Intersection)、差(Difference)、广义笛卡尔积(Extended Cartesian Product);(2)专门的关系运算:选择(Select)、投影(Project)、连接(Join)、除(Divide);(3)有关的数据操作:查询(Query)、插入(Insert)、删除(Delete)、修改(Update)。
4.关系模型的完整性规则都有哪些?在关系数据模型中一般将数据完整性分为实体完整性、参照完整性和用户定义完整性。
5.试述外部关键字的概念和作用,外部关键字是否允许为空值,为什么?如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。
外部关键字用于实现表与表之间的参照完整性。
外部关键字是否允许为空值取决于语义的规定。
外部关键字的取值或者为空值、或者为被参照关系中的某个关键字字段的值。
6.分别叙述在进行插入、删除、更新操作时都需要进行哪些完整性检查,并说明理由。
(1)执行插入操作时需要分别检查实体完整性规则、参照完整性规则和用户定义完整性规则。
首先检查实体完整性规则,如果插入元组的主关键字的属性不为空值、并且相应的属性值在关系中不存在(即保持唯一性),则可以执行插入操作,否则不可以执行插入操作。
接着再检查参照完整性规则,如果是向被参照关系插入元组,则无须检查参照完整性;如果是向参照关系插入元组,则要检查外部关键字属性上的值是否在被参照关系中存在对应的主关键字的值,如果存在则可以执行插入操作,否则不允许执行插入操作。
另外,如果插入元组的外部关键字允许为空值,则当外部关键字是空值时也允许执行插入操作。
最后检查用户定义完整性规则,如果插入的元组在相应的属性值上遵守了用户定义完整性规则,则可以执行插入操作,否则不可以执行插入操作。
(2)执行删除操作时一般只需要检查参照完整性规则。
如果删除的是参照关系的元组,则不需要进行参照完整性检查,可以执行删除操作。
如果删除的是被参照关系的元组,则检查被删除元组的主关键字属性的值是否被参照关系中某个元组的外部关键字引用,如果未被引用则可以执行删除操作;否则可能有三种情况:1)不可以执行删除操作,即拒绝删除;2)可以删除,但需同时将参照关系中引用了该元组的对应元组一起删除,即执行级联删除;3)可以删除,但需同时将参照关系中引用了该元组的对应元组的外部关键字置为空值,即空值删除。
(3)执行更新操作可以看作是先删除旧的元组,然后再插入新的元组。
所以执行更新操作时的完整性检查综合了上述两种情况。
7.试述关系的自然连接和等值连接的异同之处。
自然连接和等值连接都是基于相等比较运算的连接,但是自然连接要去掉重复的属性,而等值连接却不需要去掉重复的属性。
8.以图3-6的数据库为例(可参照图5-1,该数据库的实例),用关系代数完成以下检索:注意:此处暂以 * 表示连接运算符。
1)检索在仓库WH2工作的职工的工资。
π职工号,工资(σ仓库号="WH2"(职工))2)检索在上海工作的职工的工资。
π职工号,工资(σ城市="上海"(仓库) * 职工)3)检索北京的供应商的名称。
π供应商名(σ地址="北京"(供应商))4)检索目前与职工E6有业务联系的供应商的名称。
π供应商名(σ职工号="E6"(订购单) * 供应商)5)检索所有职工的工资都大于1220元的仓库所在的城市。
π城市(仓库) -π城市(σ工资<=1220(职工) * 仓库)6)检索和北京的所有供应商都有业务联系的职工的工资。
π职工号,工资(职工* (订购单÷π供应商号(σ地址="北京"(供应商))))7)检索至少和职工E1、E4、E7都有联系的供应商的名称。
π供应商名(订购单÷(“E1”,”E4”,”E7”) * 供应商)9.试述关系数据库系统的三层模式结构。
略习题四1.简述客户/服务器结构的概念,并说明客户/服务器结构与文件服务器网络结构的区别。
客户/服务器结构的基本思想是应用程序或应用逻辑可以根据需要划分在服务器和客户工作站中,它既不像集中式系统那样所有的应用程序都在主机上执行,也不像文件服务器网络那样所有的应用程序都在客户端执行,它可以使应用程序合理负担在服务器和客户端。
客户/服务器结构与文件服务器网络结构的硬件拓扑结构很相似,它们的根本区别在于:客户/服务器结构的服务器可以执行应用程序;而文件服务器的服务器只是一个数据共享器,它不能执行应用程序。
2.在客户/服务器结构中,数据库服务器和客户端计算机是如何分工的?数据库服务器应完成数据管理、信息共享、安全管理、以及一些更高级的管理。
它是一个开放的体系结构,可以接受来自各种应用程序和开发工具的客户端的连接;它除了要管理集中的数据库之外,还要处理来自客户端的数据访问请求和将结果反馈给用户(包括管理请求队列、管理缓存、响应服务、管理结果和通知服务完成等)的工作。