ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:133.60KB ,
资源ID:28625173      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28625173.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库原理 课后题答案 作业解答.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库原理 课后题答案 作业解答.docx

1、数据库原理 课后题答案 作业解答第1章 引言11说明物理数据独立性与逻辑数据独立性的区别。答:在某个层次上修改数据库的模式定义而不影响位于其上层模式的能力叫做数据独立性。有两个层次的数据独立性:物理数据独立性与逻辑数据独立性物理数据独立性:是指修改数据库的物理模式而不必重写应用程序的能力;逻辑数据独立性:是指修改数据库的逻辑模式而不必重写应用程序的能力;区别:由定义可知:他们位于数据库系统的不同的层次。物理数据独立性:为了提高性能,偶尔在物理层做一些修改,通过物理数据独立性的特性尽量不影响逻辑层,从而达到不必重写应用程序的能力。逻辑数据独立性:只要数据库的逻辑结构发生了变化,逻辑层就必须要做一

2、些修改,通过逻辑数据独立性,保持视图抽象层的不变,从而达到不必重写应用程序的能力。12 数据库管理员的主要作用是什么?答:DBA:一个特殊的用户,负责对DBMS进行集中的管理与控制,它就是数据库管理员-DBA-Database Administrator;DBA的职责包括:决定数据库中的信息内容和结构;决定数据库的存储结构和存取策略;定义数据的安全性和完整性约束;监控数据库的使用和运行;数据库的性能改进、重组和重构,以提高系统的性能。13 举例说明数据库模式和实例间的区别。答:数据库中的数据会随时发生变化,特定时刻存储在数据库中的信息集合称作数据库的一个实例。而数据库的总体设计,即数据库的样子

3、,称作数据库模式,按照抽象层次的不同,可分为物理模式、逻辑模式和子模式。例如:若要存储学生的信息,首先要对存储学生的信息即属性(如:学号、姓名、性别、年龄等)进行抽象,并对属性进行物理层和逻辑层的描述,而实例仅仅是一个具体学生的信息(例如:20050808111,张三、男,1980.10.13),其存储等各种操作按照数据库模式的描述进行。14举例说明数据3层抽象间的区别。答:数据库管理系统通过如下三个层次的抽象来向用户屏蔽复杂性,简化系统的用户界面:物理层抽象、逻辑层抽象和视图层抽象。物理层抽象:最低层次的抽象,描述数据是如何存储的。它描述复杂的底层数据结构,是学者和开发DBMS的供应商研究的

4、事情;逻辑层抽象:比物理层稍高层次的抽象,描述数据库中存储什么数据以及这些数据间存在什么关系。数据库管理员和数据库应用开发人员必须确定数据库中应该保存哪些信息;视图层抽象:也叫概念层,是最高层次的抽象,但它只描述整个数据库的一小部分,系统可以为同一数据库提供多个视图。例如:存储学生Student和老师Teacher的信息,其中Student包含Stu_number和Stu_name,Teacher包含Teach_no和Teach_name和Teach_age。在物理层,Student和Teacher等记录可能被描述为由连续的存储位置组成的存储块。数据库管理系统为数据库程序设计人员屏蔽了许多低层

5、的存储细节。在逻辑层,数据库管理员或程序设计人民在这个抽象层次上工作。例如 Student(Stu_number,Stu_name) Teacher(Teach_no,Teach_name,Teach_age)在视图层,数据库管理系统定义了数据库的多个视图,数据库用户看到的是这些视图。除了屏蔽数据库的逻辑层细节外,视图还提供了防止用户访问数据库某些部分的安全机制。例如用户只能看到教师的Teach_no和Teach_name,而不能看见Teach_age。第2章 实体-联系模型21 主码、侯选码和超码之间有什么区别?答:超码是一个或多个属性的集合,这些属性的组合可以使我们在一个实体集中唯一地标识

6、每个实体。通常我们只关心这样的超码:它们的任意真子集都不能成为超码,这样的最小超码称为候选码;对一个实体集来说,它的候选码不是唯一的。主码是被数据库设计者选中的,用来在同一实体集中区分不同实体的侯选码;区别:(1) 从定义可知,超码是一个属性的集合,可以唯一的标识每个实体,属性集可能有冗余属性;(2) 侯选码是包含属性最少超码,即属性集中没有冗余属性。侯选码不唯一。(3) 主码是从侯选码集合中被数据库设计者选中的,用来识别实体的侯选码。22 为交通管理局的车辆管理设计了一个ER图。交通管理局管理很多车主,每个车主有一辆或多辆机动车。每辆机动车可能发生了0次或任意多次交通事故。答:按要求设计出如

7、下ER图:23 将习题2.2的ER图转换成表的形式。owner(owner_number,owner_name,owner_sex,owner_birthday,owner_address)owner_car(owner_number,car_number,purchasing_date,car_price)car(car_number,car_type,manufactured_date,car_make)accident(accident_number,car_number,accident_date,accident_desc)24 强实体集和弱实体集之间有什么差别?答:其属性可形成主码

8、的实体集称为强实体集;所有属性都不足以形成主码的实体集称为弱实体集。差别:(1).强实体集和弱实体集存在依赖密切相关: 强实体集的成员必然是支配实体; 而弱实体集的成员只能是从属实体。(2).弱实体集只有在参与多对一的联系集时才有意义,该联系集应该不具有任何属性。25 根据讲课内容,给出学校有关学生、课程、教师和院系之间的ER图。答:根据讲课内容将上面实体之间的关系画到一起,可得到如下ER图:第3章 关系模型31 关系和关系模式有什么区别?答:在数学上将关系定义为一系列域上的笛卡尔积的子集。所谓数据库模式就是数据库在逻辑层的总体设计,一般简称模式;针对关系模型来说,数据库模式就是关系模式。形象

9、的说,关系模式的概念和程序设计语言中“数据类型”的概念类似;关系的概念和程序设计语言中数据类型的“变量”的概念类似。如图31所示。32 列出在数据库中引入空值的两个原因。答:空值null是所有可能域的成员,表示“值未知或不存在”。因此引入空值的原因一:值未知;原因二:表示值不存在。33 为什么要在数据库中定义视图?答:基于以下三点原因,希望用户和编程人员工作在视图层上:1. 出于安全上的考虑,不希望用户看到整个数据库的逻辑模式,而要隐藏掉部分数据;2. 希望产生比逻辑模式更加符合特定用户习惯的关系集合,也就是人们常说的个性化服务;3. 如果应用程序基于视图层的视图,就更容易实现逻辑数据独立性!

10、34 使用下面的关系代数表达式表示所有与Smith居住在同一城市同一街道的客户姓名。 35 基于本章讲到的关系模式和关系,用关系代数表达式表示上课地点在三教的那些课程的开课教师所在系的名称。答:题目所求的关系代数表达式为:36 基于本章讲到的关系模式和关系,用自然语言连接表示以下查询:找出所有既有教师讲授又有学生选修的课程名称。答:所求自然连接表达式为:37 设r(R)和s(S)是两个关系,并且S是R的子集,那么有请分析此表达式的正确性。答: 此表达式正确。分析如下:首先:关系,r(R)和s(S)之间的关系可用下图表示。其次:在表达式中,表达式了,因此可化简为。由和上图可以得出如下形式化描述:

11、定理1:不妨设关系中有个元组(),若,对,则有(),反之亦然。:表示对中任一个元组,记,则有()。因此若中存在形如()的个元组,则由表达式就可以保证在其结果中不存在元组,因此必定有。反之若某个(),则在结果中必定包含元组,从而在结果中不包含元组。题目表达式左部满足定理1描述,因此表达式成立,即描述正确。附:本章所讲到的关系模式有:1.Student_schema = (student_number, student_name, department_name) 2.Department_schema= (department_name, department_location, departm

12、ent_leader) 3.Course_schema = (course_name, course_location, course_capacity) 4.Selecting_schema = (student_number, course_name) 5.Teacher_schema = (teacher_number, teacher_name, teacher_age, department_name) 6.Teaching_schema = (teacher_number, course_name)第4章 关系数据库查询语言SQL41 如下所示是一个保险公司的数据库,其中加下划线的

13、是主码。对这个关系数据库用SQL回答以下问题:Person(ss,name,address)Car(license,year,model)Accident(date,driver,damage)Owns(ss,license)Log(license,date,driver)(1) 找出在1989年其车辆出过车祸的车主人数;Select count(distinct ss) from owns,log,accidentwhere log.license=owns.license and log.driver=accident.driverand year(accident.date)=1989(

14、2) 找出和John Smith的车有关的车祸数量;Select count(*) from person,owns,license,accidentwhere person.name=”John Smith” and person.ss=owns.ss and owns.license=log.license and log.driver=accident.driver(3) 为数据库添加一个新客户;Insert into person values(121,“张三”,“北京海淀区101”)(4) 删除John Smith的马自达车(Mazda);Delete from Owns where

15、 license in ( select license from person,owns,car Where person.name=” John Smith” and person.ss=owns.ss And owns.licens=car.license and car.model=”Mazda”)(5) 为Jones的丰田车(Toyota)加一条加车祸记录。Insert into accident (date,driver,damage)select 2007/10/22, log.driver,”车门损坏” from person,owns,car,log Where person

16、.name=”Jones” and person.ss=owns.ss And owns.licens=car.license and car.model=” Toyota” And owns.license=log.license42已知关系模式:R(A,B,C)和S(D,E,F)以及关系r(R)和s(S)。请给出与下列查询等价的SQL表达式。(1) : Select A from r(2) : select * from r where B=17(3) : r full outer join s(4) : select A,F from r,s where C=D4.3根据本章用到的关系t

17、eacher和teaching ,请问下列SQL语句的结果是什么?Teacher full outer join teaching using (teacher_number)Teacher_numberTeacher_nameTeacher_ageDepartment_nameCourse_nameT001陈嘉仁35计算机系数据库系统概论T002周天华53计算机系算法与复杂性理论T002周天华53计算机系组合数学T002周天华53计算机系数据安全T003曾红42英语系T004向锋32数学系微积分T005王梅38英语系中级英语听力T005王梅38英语系美国文学T006马永生49计算机系数据库系

18、统概论T007孙月36电子系微电子学第5章 数据库的完整性约束与模式分解5.1 考虑如下关系数据库 Employee( person_name,street,city) Works(person_name,company_name,salary) Company(company_name,city) Manages(person_name,manager_name)给出该数据库的SQL DDL定义。指出其应具有的参照完整性约束,并将它们在DDL中表示出来。 CREATE TABLE Employee ( person_name varchar(20) not Null primary key,

19、 Street varchar(50), City varchar(20) ) CREATE TABLE Company ( Company_name varchar(30) not full primary key, City varchar(20) ) CREATE TABLE Works ( person_name varchar(20), Company_name varchar(30), Salary numeric(8,2), PRIMARY KEY (person_name,company_name), FOREIGN KEY (person_name) REFERENCES E

20、mployee ON DELETE CASCADE,FOREIGN KEY (company_name) REFERENCES Company ON DELETE CASCADE ) CREATE TABLE Manages(person_name varchar(20),manager_name varchar(20) ,PRIMARY KEY (person_name, manager_name),FOREIGN KEY (person_name) REFERENCES Employee ON DELETE CASCADE)52 考虑视图student_selecting,其定义如下(基于

21、本章示例所用的关系模式和关系), Create view student_selecting as Select student_number,department_name,course_name From student,selecting Where student.student_number=selecting.student_number 假设这一视图被实体化,也就是说,这一视图被计算并存储。请利用触发器来维护这一视图,即在student和selecting上进行插入和删除时要保持视图最新,并且维护数据库的一致性,但不考虑数据更新的情况。答:定义如下四个触发器: Create Tr

22、igger Trig_InsertStudent FOR INSERT As Create view student_selecting as Select student_number,department_name,course_name From student,selecting Where student.student_number=selecting.student_number Create Trigger Trig_DeleteStudent FOR Delete As Create view student_selecting as Select student_numbe

23、r,department_name,course_name From student,selecting Where student.student_number=selecting.student_number Create Trigger Trig_InsertSelecting FOR INSERT As Create view student_selecting as Select student_number,department_name,course_name From student,selecting Where student.student_number=selectin

24、g.student_number Create Trigger Trig_DeleteSelecting FOR Delete As Create view student_selecting as Select student_number,department_name,course_name From student,selecting Where student.student_number=selecting.student_number53 给出下图中的关系所满足的所有函数依赖。ABC 函数依赖:,54 给定关系模式R(A,B,C,G,H,I)及函数依赖集: , 根据Armstrong公理证明以下函数依赖成立: (1) ;(2) ;(3) 。 证明: (1)根据传递律,由,可得出; (2)根据合并律,由,可得出; (3)根据伪传递律,由,可得出;55 假设将模式R(A,B,C,D,E)分解为模式(A,B,C)和模式(A,D,E)。如果有如下函数依赖集F:,证明该分解是无损连接分解。证明:记R1(A,B,C),R2(A,D,E),且有。 ,并且在函数依赖集F中有函数依赖。 成立。 由无损连接分解的条件可知该分解是无损连接分解。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1