杭电数据库张红娟编第4章习题参考答案

合集下载

数据库原理及应用第4章课后习题答案

数据库原理及应用第4章课后习题答案

习题61、说明数据库设计的特点。

1)三分技术,七分管理,十二分基础数据2)综合性3)结构(数据)设计和行为(处理)设计相结合2、试述数据库设计的过程3、试述数据库设计过程的各个阶段设计内容。

1)需求分析阶段需求分析是对用户提出的各种要求加以分析,对各种原始数据加以综合、整理,是形成最终设计目标的首要阶段。

需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。

2)概念结构设计阶段概念结构设计是对用户需求进行进一步抽象、归纳,并形成独立于DBMS和有关软、硬件的概念数据模型的设计过程。

3)逻辑结构设计阶段逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化的设计过程。

4)物理设计阶段数据库物理设计阶段,是将逻辑结构设计阶段所产生的逻辑数据模型,转换为某种计算机系统所支持的数据库物理结构的实现过程。

5)数据库实施阶段数据库实施阶段,即数据库调试、试运行阶段。

一旦数据库的物理结构形成,就可以用已选定的DBMS来定义、描述相应的数据库结构,装入数据库数据库,以生成完整的数据库,编制有关应用程序,进行联机调试并转入试运行,同时进行时间、空间等性能分析。

6)数据库运行和维护阶段数据库实施阶段结束,标志着数据库系统投入正常运行工作的开始。

在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

4、需求分析中发现事实的方法有哪些?1)跟班作业。

通过亲身参加业务工作来观察和了解业务活动的情况。

2)开调查会。

通过与用户座谈来了解业务活动的情况及用户需求。

3)检查文档。

通过检查与当前系统有关的文档、表格、报告和文件等,进一步理解原系统,并有利于提供与原系统问题相关的业务信息。

4)问卷调查。

5、需求分析阶段的设计目标是什么?调查的内容是什么?需求分析阶段的目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,确定企业的组织目标,明确用户的各种需求,进而确定新系统的功能,并把这些要求写成用户和数据库设计者都能够接受的文档。

杭电《数据库概论》习题答案

杭电《数据库概论》习题答案

《软件技术基础》之数据库概论习题一、选择题1.把一个数据库分布在若干台计算机中,称为()数据库A.网状B.层次分布式 D.集中式2.关系数据库系统中,一个关系相当于()一张二维表 B.一条记录C.一个关系数据库D.一个实体3.在数据库设计中,E—R图(即实体联系图)是为了描述()A实体 B.结构数据模型C.关系D.概念数据模型4.关系数据库是用( C )实现数据间的联系A.表 ps:准确地说是二维表格B.外键C.关系D.指针5.数据库体系三级模式中,模式/内模式的映像使数据库具有()A.数据独立性B.数据逻辑独立性数据物理独立性 D.数据的一致性6.下面()不是数据库系统具有的特征?A.数据共享冗余大C.用数据模型描述数据D.数据独立于程序7.下面()描述了事物的特征,但不涉及信息在计算机中表示。

A实体 B. 概念数据模型C.关系D. 结构数据模型8.关系数据库与网状、层次数据库的主要区别在于()A.关系数据库存在关系B.关系数据库用表格表达数据C.关系数据库应用广泛9.数据管理技术发展过程中,文件系统与数据库系统的重要区别是数据库系统具有( )A .数据可共享 B. 数据无冗余C. 特定的数据模型有专门的数据管理软件10.在下面列出的几种语言中,哪一种是关系数据库的标准语言? ( )A. C++B. FORTRAN 11.假定有学生关系S 、课程关系C 、学生选课关系SC 的ER 图四,在由其产生的关系集合中查找选修"COMPUTER"课程的女学生的姓名,将涉及到关系( )图一A .,C ,SC12.设有关系R,S和T 如下。

关系T 是由关系R 和S 经过哪种操作得到的?( )A. R ∪×S D. R ∞S 13.下列选项中属于实体关系的是?( )A. 关系型B. 结构模型 一对多 D. 以上都不是二、填空题1.数据库系统中,常用的三种数据结构模型为:层次、网状、关系。

-数据库原理和应用第二版-第1-4章习题答案解析-课后习题

-数据库原理和应用第二版-第1-4章习题答案解析-课后习题

第1章数据库概述1.试说明数据、数据库、数据库管理系统和数据库系统的概念。

答:数据是描述事物的符号记录,是数据库中存储的基本对象。

数据库是存放数据的仓库,是长期存储在计算机中的有组织的、可共享的大量数据的集合。

数据库管理系统是一个专门用于实现对数据进行管理和维护的系统软件。

数据库系统是指在计算机中引入数据库后的系统,一般由数据库、数据库管理系统(及相关的实用工具)、应用程序、数据库管理员组成。

2.数据管理技术的发展主要经历了哪几个阶段?答:数据管理技术的发展主要经历了文件管理和数据库管理两个阶段。

3.与文件管理相比,数据库管理有哪些优点?答:将相互关联的数据集成在一起,具有较少的数据冗余,程序与数据相互独立,保证数据的安全可靠,最大限度地保证数据的正确性,数据可以共享并能保证数据的一致性。

4.在数据库管理方式中,应用程序是否需要关心数据的存储位置和存储结构?为什么?答:不需要。

因为在数据库系统中,数据的存储位置以及存储结构保存在数据库管理系统中,从数据到物理存储位置的转换是由数据库管理系统自动完成的。

5.在数据库系统中,数据库的作用是什么?答:在数据库系统中,数据库是存放数据的场所。

6.在数据库系统中,应用程序可以不通过数据库管理系统而直接访问数据文件吗?答:不能。

7.数据独立性指的是什么?它能带来哪些好处?答:数据独立性指的是数据的逻辑独立性和物理独立性。

逻辑独立性带来的好处是当表达现实世界信息的逻辑结构发生变化时,可以不影响应用程序;物理独立性带来的好处是当数据的存储结构发生变化时,可以不影响数据的逻辑组织结构,从而也不影响应用程序。

8.数据库系统由哪几部分组成,每一部分在数据库系统中的作用大致是什么?答:数据库系统由四个主要部分组成,即数据库、数据库管理系统、应用程序和系统管理员。

数据库是数据的汇集,它以一定的组织形式存于存储介质上;数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能;系统管理员负责数据库的规划、设计、协调、维护和管理等工作;应用程序指以数据库数据为核心的应用程序。

数据库原理及应用教程第4版习题参考答案

数据库原理及应用教程第4版习题参考答案

习题参考答案第1章习题参考答案一、选择题1. C2. B3. D4. C5. D6. B7. A8. B9. D 10. B11. C 12. D 13. D 14. D 15. B16. C 17. D 18. A 19. D 20. A21. D 22. D 23. C 24. A 25. C二、填空题1. 数据库系统阶段2. 关系3. 物理独立性4. 操作系统5. 数据库管理系统(DBMS)6. 一对多7. 独立性8. 完整性控制9. 逻辑独立性10. 关系模型11. 概念结构(逻辑)12. 树有向图二维表嵌套和递归13. 宿主语言(或主语言)14. 数据字典15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构16. 现实世界信息世界计算机世界三、简答题1、简述数据库管理技术发展的三个阶段。

各阶段的特点是什么?????答:数据库管理技术经历了人工管理阶段、文件系统阶段和数据库系统阶段。

???(1)、人工管理数据的特点:??A、数据不保存。

B、系统没有专用的软件对数据进行管理。

C、数据不共享。

D、数据不具有独立性。

??????? (2)、文件系统阶段的特点:???A、数据以文件的形式长期保存。

B、由文件系统管理数据。

C、程序与数据之间有一定的独立性。

????D、文件的形式已经多样化E、数据具有一定的共享性(3)、数据库系统管理阶段特点:??A、数据结构化。

B、数据共享性高、冗余度底。

C、数据独立性高。

D、有统一的数据控制功能。

2、从程序和数据之间的关系来分析文件系统和数据库系统之间的区别和联系答:数据管理的规模日趋增大,数据量急剧增加,文件管理系统已不能适应要求,数据库管理技术为用户提供了更广泛的数据共享和更高的数据独立性,进一步减少了数据的余度,并为用户提供了方便的操作使用接口。

数据库系统对数据的管理方式与文件管理系统不同,它把所有应用程序中使用的数据汇集起来,以记录为单位存储,在数据库管理系统的监督和管理下使用,因此数据库中的数据是集成的,每个用户享用其中的一部分。

数字电子技术基础(第四版)课后习题答案-第四章

数字电子技术基础(第四版)课后习题答案-第四章

第4章触发器[题4.1]画出图P4.1所示由与非门组成的基本RS触发器输出端Q、Q的电压波形,输入端S、R的电压波形如图中所示。

图P4.1[解]见图A4.1图A4.1[题4.2]画出图P4.2由或非门组成的基本R-S触发器输出端Q、Q的电压波形,输出入端S D,R D的电压波形如图中所示。

图P4.2[解]见图A4.2[题4.3]试分析图P4.3所示电路的逻辑功能,列出真值表写出逻辑函数式。

图P4.3 [解]:图P4.3所示电路的真值表S R Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0* 1 110*由真值表得逻辑函数式 01=+=+SR Q R S Q nn[题4.4] 图P4.4所示为一个防抖动输出的开关电路。

当拨动开关S 时,由于开关触点接触瞬间发生振颤,D S 和D R 的电压波形如图中所示,试画出Q 、Q 端对应的电压波形。

图P4.4[解] 见图A4.4图A4.4[题4.5] 在图P4.5电路中,若CP 、S 、R 的电压波形如图中所示,试画出Q 和Q 端与之对应的电压波形。

假定触发器的初始状态为Q =0。

图P4.5[解]见图A4.5图A4.5[题4.6]若将同步RS触发器的Q与R、Q与S相连如图P4.6所示,试画出在CP信号作用下Q和Q端的电压波形。

己知CP信号的宽度tw= 4 t Pd 。

t Pd为门电路的平均传输延迟时间,假定t Pd≈t PHL≈t PLH,设触发器的初始状态为Q=0。

图P4.6图A4.6[解]见图A4.6[题4.7]若主从结构RS触发器各输入端的电压波形如图P4.7中所给出,试画Q、Q端对应的电压波形。

设触发器的初始状态为Q=0。

图P4.7[解] 见图A4.7图A4.7R各输入端的电压波形如图P4.8所示,[题4.8]若主从结构RS触发器的CP、S、R、D1S。

试画出Q、Q端对应的电压波形。

数据库系统概论(第4版)第四章到十一章习题答案

数据库系统概论(第4版)第四章到十一章习题答案

第四章习题习题1.什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。

2.数据库的安全性和计算机系统的安全性有什么关系?答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。

只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。

数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密XXX、相互支持的。

5.试述实现数据库安全性控制的常用方法和技术。

答:(1)用户标识和鉴别:该方法是由系统提供一定的方式让用户标识自己的名字和身份。

每次用户要求进入系统时,由系统进行核对,通过鉴定后才能提供系统的使用权。

(2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。

例如C2级中的自主存取控制(DAC),B1级中的强制存取控制(MAC)。

(3)视图机制:为不同的用户定义不同的视图,把数据对象限制在一定的范围内,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。

(4)审计:建立审计日志,把用户对数据库的所有操作自动记录在审计日志中。

DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。

(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。

6.什么是数据库中的自主存取控制方法和强制存取控制方法?答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。

当用户对数据库访问时首先检查用户的存取权限。

防止不合法用户对数据库的存取。

强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一级别的许可证。

系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。

7.SQL语言中提供了哪些数据控制(自主存取控制)的语句?请试举几例说明它们的使用方法。

数据库技术与应用(冯凤娟)课后答案

数据库技术与应用(冯凤娟)课后答案

第1章数据库系统概述四、综合题1.商品(商品号,商品名,单价,产地)商店(商店编号,店名,店址,店经理编号)销售(商店编号,商品编号,月销售量)职工(职工编号,职工名,性别,工资,商店编号,聘用开始时间)2.3.第2章关系数据库4. (1)(2)(3)(4)(5)5.(1)(2)(3)第四章关系数据库4.第五章数据库设计1. 数据库系统的设计分为哪几个阶段?各阶段完成的具体任务是什么?答:(1)系统需求分析阶段:要收集数据库所有用户的信息内容和处理要求,并加以规划和分析。

(2)概念结构设计阶段:是把用户的信息要求统一到一个整体逻辑结构中,此结构能够表达用户的要求,是一个独立于任何DBMS软件和硬件的概念模型。

(3)逻辑结构设计阶段:是将上一步所得到的概念模型转换为某个DBMS所支持的数据模型,并对其进行优化。

(4)物理结构设计阶段:是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。

(5)数据库实施阶段:根据物理结构设计的结果把原始数据装入数据库,建立一个具体的数据库并编写和调试相应的应用程序。

(6)数据库运行与维护阶段:主要是收集和记录实际系统运行的数据,用来评价数据库系统的性能,进一步调整和修改数据库。

2. 数据库结构设计的任务是什么?分别形成的数据库模式是什么?答:数据库的结构设计是指根据给定的应用环境,进行数据库的模式或子模式的设计。

它包括数据库的概念设计、逻辑设计和物理设计。

数据库结构设计的不同阶段形成了数据库的各级模式,即:(1)在概念设计阶段形成独立于机器特点,独立于个DBMS产品的概念模式,在本篇中就是E-R 图;(2)在逻辑设计阶段将E-R图转换成具体产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图,形成数据的外模式;(3)在物理设计阶段,根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。

3.数据库设计过程的输入和输出有哪些内容?答:数据库设计过程的输入包括四部分内容:1)总体信息需求;2)处理需求;(3)DBMS的特征;(4)硬件和OS(操作系统)特征。

-数据库原理及应用第二版-第1-4章习题答案-课后习题

-数据库原理及应用第二版-第1-4章习题答案-课后习题

-数据库原理及应用第二版-第1-4章习题答案-课后习题数据库原理及应用第二版第1-4章习题答案课后习题---1. 第一章习题答案1.1 什么是数据库管理系统(DBMS)?提供三个具体例子。

DBMS是一种软件系统,用于管理和组织大量数据的存储和访问。

具体例子包括MySQL,Oracle和Microsoft SQL Server。

1.2 数据库系统由哪些基本组成部分构成?简要描述每个组成部分的功能。

数据库系统由以下组成部分构成:- 数据库:用于存储和组织数据的集合。

- 数据库管理系统(DBMS):负责管理和操作数据库的软件系统。

- 应用程序:使用数据库中的数据进行特定任务的软件程序。

- 用户:通过应用程序和DBMS与数据库进行交互的人。

1.3 什么是数据库模式(schema)?它包括哪些内容?数据库模式是数据库的逻辑结构和特征的描述。

它包括实体(Entity)、属性(Attribute)、关系(Relationship)以及约束条件等内容。

1.4 什么是数据库实例(instance)?它包括哪些内容?数据库实例是指在内存中运行的数据库系统。

它包括当前数据库中的数据以及与之相关的缓冲区、连接信息和其他控制结构等内容。

1.5 简述数据库管理系统的主要功能。

- 数据定义功能:定义和描述数据库模式。

- 数据操作功能:实现对数据库的增、删、改、查等操作。

- 数据控制功能:管理用户访问权限,并确保数据的完整性和安全性。

- 数据库恢复功能:通过备份和恢复机制保护数据的持久性。

- 并发控制功能:维护多个用户同时访问数据库的一致性和隔离性。

2. 第二章习题答案2.1 数据库系统中的数据模型是什么?它的目的是什么?数据模型是数据库中数据的逻辑表示方式。

它的目的是描述数据之间的关系以及数据的特性和约束条件。

2.2 列举并简要描述常见的数据模型。

- 层次模型:将数据组织成树状结构,通过父节点和子节点之间的关系表示数据之间的层次关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/* 完成表中约束的定义*/--创建course表create table course(cno char(1) primary key,cname varchar(20) not null,credit smallint check(credit>=1 and credit<=6))--创建class表create table class(clno char(5) primary key,speciality varchar(20) not null,inyear char(4) not null,number integer check(number>1 and number<100),monitor char(7))--创建student表create table student3(sno char(7) primary key,sname varchar(20) not null,ssex char(2) not null default('男'),sage smallint check(sage>14 and sage<65),clno char(5) not null references class(clno) on delete cascade on update cascade)--为class表添加参照完整性alter table classadd constraint fk_monitor foreign key (monitor) references student(sno) on delete no action--创建grade表create table grade(sno char(7) not null references student(sno) on delete cascade on update cascade,cno char(1) not null references course(cno) on delete cascade on update cascade, gmark decimal(4,1) check(gmark>0 and gmark <100),primary key (sno,cno))/* 针对成绩管理数据库中的表,完成以下操作:*/--(1)用户张勇对Student表和Course表有Select权力。

Grant select on student to 张勇Grant select on course to 张勇--(2)把对表Student的INSERT和Delete权限授予用户张三,并允许他再把此权限授予其他用户。

Grant insert,delete on student to 张三with grant option--(3)把查询Course表和修改属性Credit的权限授给用户李四。

Grant select,update(credit) on course to 李四--(4)授予用户李勇敏对Student表的所有权力(读、插、删、改),并具有给其他用户授权的权力。

Grant all privilege on student to 李勇敏with grant option--(5)撤销(1)中对张勇所授予的所有权力。

Revoke select on student to 张勇Revoke select on course to 张勇或:Revoke select on student from 张勇Revoke select on course from 张勇--(6)撤销(2)中对张三所授予的所有权力。

revoke insert,delete on student to 张三cascade或revoke insert,delete on student from 张三cascade/* 为成绩管理数据库中的Student表创建一触发器:当向表中插入或删除记录时,修改Class 表中相应班级的人数。

*/--创建insert触发器,适用于student表的单行数据的添加create trigger stu_inserton studentafter insertasupdate classset number=number+1from class,insertedwhere class.clno = inserted.clno--创建delete触发器,适用于student表的单行数据的删除create trigger stu_deleteon studentafter deleteasupdate classset number=number-1from class,deletedwhere class.clno = deleted.clno--将insert和delete写入一个触发器内,适用于student表的单行数据的添加或删除create trigger tri_stuon studentafter insert,deleteasif update(sno)update classset number=number+1where clno = (select clno from inserted)else update classset number=number-1where clno = (select clno from deleted)--验证触发器,添加数据insert into studentvalues ('2222','tom','男',20,'00311')--验证触发器,删除数据delete from studentwhere sno='2222'--假设向student表添加或删除的多行数据都来自同一个班级create trigger tri_stu2on studentafter insert,deleteasif update(sno)update classset number=number+(select count(*) from inserted)where clno = (select clno from inserted)else update classset number=number-(select count(*) from inserted)where clno = (select clno from deleted)----适用于student表的多行数据的添加或删除(最靠谱解决方案)create trigger tri_stu2on studentafter insert,deleteasbegindeclare @sno char(7),@clno char(5)if update(sno)begindeclare mycursor cursor for select sno,clno from inserted --声明游标open mycursor --打开游标fetch next from mycursor into @sno,@clno --获取数据while(@@fetch_status =0 ) /* 0操作成功,-1 FETCH 语句失败或此行不在结果集中,-2 被提取的行不存在*/beginupdate classset number=number+1where clno = @clnofetch next from mycursor into @sno,@clnoendclose mycursor --关闭游标deallocate mycursor --释放游标endelsebegindeclare mycursor cursor for select sno,clno from deletedopen mycursorfetch next from mycursor into @sno,@clnowhile(@@fetch_status = 0)beginupdate classset number = number -1where clno=@clnofetch next from mycursor into @sno,@clnoendclose mycursordeallocate mycursorendend--为class表再建一更新触发器:当更新班长学号时,检查新输入的学号是否为同一班级的学生学号,若不是,给出适当的提示信息。

create trigger stu_updateon classafter updateasif update(monitor)if ( select monitor from inserted ) not in( select sno from studentwhere clno = (select clno from deleted ) ) beginprint 'there is not the new monitor in the class'rollback transactionend--验证触发器执行update classset monitor = '2001104'where clno = '00312'--创建商品表create table product( pno char(6) primary key,pname varchar(20) not null,price decimal(7,2) )--创建仓库表create table warehouse( whno char(3) primary key,whname varchar(20) not null,whaddress varchar(20) )--创建库存商品表create table whproduct( whno char(3) references warehouse(whno) on delete no action on update cascade,pno char(6) references product(pno) on delete cascade on update cascade,number int )--设计触发器,当新增商品时,自动生成该商品在所有仓库的库存记录,库存数量为0 create trigger tri_producton productafter insertasbegindeclare @pno char(3)select @pno=pno from insertedinsert into whproductselect whno,@pno,0from warehouseend----设计触发器,当新增仓库时,自动生成该仓库在所有商品的库存记录,库存数量为0 create trigger tri_warehouseon warehouseafter insertasbegindeclare @whno char(6)select @whno=whno from insertedinsert into whproductselect @whno,pno,0from productend。

相关文档
最新文档