《数据库》第5章习题答案

合集下载

数据库第四、五章习题及答案

数据库第四、五章习题及答案

第4、5章练习题(数据库的安全性、完整性)一、选择题1.下面哪个不是数据库系统必须提供的数据控制功能。

A.安全性B.可移植性C.完整性D.并发控制答案:B2.保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。

这是指数据的。

A.安全性B.完整性C.并发控制D.恢复答案:A3.数据库的是指数据的正确性和相容性。

A.安全性B.完整性C.并发控制D.恢复答案:B4.在数据系统中,对存取权限的定义称为。

A.命令 B.授权 C.定义 D.审计答案:B5.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的。

A.可靠性B.一致性C.完整性D.安全性答案:D6.下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLICC.REVOKE UPDATE(XH) ON TABLE STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC答案:C 7.把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAOC)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 答案:C8.以下( D )不属于实现数据库系统安全性的主要技术和方法。

A. 存取控制技术B. 视图技术C. 审计技术D. 出入机房登记和加锁9.SQL中的视图提高了数据库系统的( D )。

A. 完整性B. 并发控制C. 隔离性D. 安全性10.安全性控制的防范对象是( B ),防止他们对数据库数据的存取。

(完整版)第五章_数据库完整性(习题)

(完整版)第五章_数据库完整性(习题)

(完整版)第五章_数据库完整性(习题)一、选择题1.完整性检查和控制的防范对象是( ),防止它们进入数据库。

安全性控制的防范对象是(),防止他们对数据库数据的存取。

A.不合语义的数据 B。

非法用户 C.不正确的数据 D.非法操作2.找出下面SQL命令中的数据控制命令().A。

GRANT MIT C.UPDATE D.SELECT3.下述SQL命令中,允许用户定义新关系时,引用其他关系的主码作为外码的是()。

A。

INSERT B。

DELETE C.REFERENCES D. SELECT4.下述SQL命令的短语中,不用于定义属性上约束条件的是()。

A.NOT NULL短语 B。

UNIQUE短语 C.CHECK短语 D。

HAVING短语二、填空题1.数据库的完整性是指数据的正确性和相容性.2.关系模型的实体完整性在CREATE TABLE中用 primary key 关键字来实现。

3.检查主码值出现不唯一和有一个为空违约情况时,则DBMS拒绝插入或修改。

4.关系模型的参照完整性在CREATE TABLE中用 foreign key关键字来实现。

5.当参照完整性检查出现违约情况时,则DBMS可以采用拒绝、级联和设置为空策略处理。

6.参照完整性的级连操作的关键字是cascade .7.在CREATE TABLE中定义属性上的约束条件,包括not null 、unique 和 check。

8.在CREATE TABLE中定义属性上的约束条件,检查列值唯一用unique 关键字。

9.关系模型的元组上的约束条件的定义,在CREATE TABLE中用check关键字来实现。

10.在Sno(学号)列上创建约束,要求Sno的值在18至22岁之间,约束名Sno_CK。

请写出对应的完整性命名子句constraintSno_CK primary key check(sno between 18 and 22)。

1.A C ;BD 2. A 3。

【《数据库与信息系统》复习题及答案】第5章数据库管理与保护

【《数据库与信息系统》复习题及答案】第5章数据库管理与保护
10.事务的隔离性是由 DBMS 的________实现的。 A.事务管理 B.恢复管理 C.并发控制 D.完整性控制 答案:C 解析:事务的隔离性是指在并发事务被执行时,系统应保证与这些事务先后单独执行时的结 果一样。事务的隔离性是由 DBMS 的并发控制实现的。恢复管理用于当数据库发生故障时 利用备份文件将数据库状态恢复到出故障前的状态。完整性控制用于保证数据库中数据的正 确性、有效性和相容性。
A.该操作不存在问题
B.该操作丢失修改
C.该操作不能重复读
D.该操作读“脏”数据
时刻序列
T1
T2

读 A=10,B=5

读 A=10,A=A*2 写回

读 A=20,B=5 求和 25 验证错
答案:C
图 5.2 事务 T1、T2 的并发操作序列
解析:本题中事务 T1 首先读取变量 A 和 B,随后事务 T2 修改变量 A,然后事务 T1 又第二
12.若事务 T 对数据 R 已加独占锁,则其他事务对数据 R ________。
A.可以加共享锁不能加独占锁 B.不能加共享锁可以加独占锁 C.可以加共享锁也可以加独占锁 D.不能加任何锁 答案:D 解析:MySQL 的 InnoDB 使用不同的锁定类型来锁定资源,其锁分别是:共享锁(S)、排他 锁(X)、意向共享锁(IS)、意向排他锁、大容量更新锁。有些锁之间是兼容的,有些锁之间 是不兼容的,如某一事务对一个数据上了 X 锁,其他事务对该数据不能上任何类型的锁。
答案:B
解析:事务是用户定义的一个数据操作序列,这些操作要么全做要么全不做,是一个不可分 割的工作单位。事务具有原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)和 持久性(Durabiliy)四个特性,简称 ACID 特性。

《MySQL数据库原理、设计与应用》第5章课后习题答案

《MySQL数据库原理、设计与应用》第5章课后习题答案

第五章一、填空题1.逗号或,2. 33.FLOOR(3+RAND()*(11-3+1))或FLOOR(3+RAND()*9)4.NULL5.ON DUPLICATE KEY二、判断题1.错2.对3.错4.对5.对三、选择题1. D2. B3. D4. A5. C四、简答题1.请简述DELETE与TRUNCA TE的区别。

答:①实现方式不同:TRUNCATE本质上先执行删除(DROP)数据表的操作,然后再根据有效的表结构文件(.frm)重新创建数据表的方式来实现数据清空操作。

而DELETE语句则是逐条的删除数据表中保存的记录。

②执行效率不同:在针对大型数据表(如千万级的数据记录)时,TRUNCATE清空数据的实现方式,决定了它比DELETE语句删除数据的方式执行效率更高。

③对AUTO_INCREMENT的字段影响不同,TRUNCATE清空数据后,再次向表中添加数据,自动增长字段会从默认的初始值重新开始,而使用DELETE语句删除表中的记录时,则不影响自动增长值。

④删除数据的范围不同:TRUNCATE语句只能用于清空表中的所有记录,而DELETE语句可通过WHERE指定删除满足条件的部分记录。

⑤返回值含义不同:TRUNCATE操作的返回值一般是无意义的,而DELETE语句则会返回符合条件被删除的记录数。

⑥所属SQL语言的不同组成部分:DELETE语句属于DML数据操作语句,而TRUNCA TE通常被认为是DDL数据定义语句。

2.请简述WHERE与HA VING之间的区别。

1答:①WHERE操作是从数据表中获取数据,用于将数据从磁盘存储到内存中,而HA VING是对已存放到内存中的数据进行操作。

②HA VING位于GROUP BY子句后,而WHERE位于GROUP BY 子句之前。

③HA VING关键字后可以跟聚合函数,而WHERE则不可以。

通常情况下,HA VING关键字与GROUPBY一起使用,对分组后的结果进行过滤。

数据库课后习题作业答案

数据库课后习题作业答案

数据库课后习题作业答案《数据库系统概论》课程习题及参考答案第⼀章绪论(教材37页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。

答:数据:描述事物的符号记录称为数据。

数据的种类有⽂字、图形、图像、声⾳、正⽂等等。

数据与其语义是不可分的。

数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。

数据库中的数据按⼀定的数据模型组织、描述和储存,具有较⼩的冗余度、较⾼的数据独⽴性和易扩展性,并可为各种⽤户共享。

数据库系统:数据库系统(DBS)是指在计算机系统中引⼊数据库后的系统构成。

数据库系统由数据库、数据库管理系统(及其开发⼯具)、应⽤系统、数据库管理员构成。

数据库管理系统:数据库管理系统(DBMS)是位于⽤户与操作系统之间的⼀层数据管理软件。

⽤于科学地组织和存储数据、⾼效地获取和维护数据。

DBMS 主要功能包括数据定义功能、数据操纵功能、数据库的运⾏管理功能、数据库的建⽴和维护功能。

2.使⽤数据库系统有什么好处?答:使⽤数据库系统的好处是由数据库管理系统的特点或优点决定的。

使⽤数据库系统的好处很多,例如可以⼤⼤提⾼应⽤开发的效率,⽅便⽤户的使⽤,减轻数据库系统管理⼈员维护的负担等。

为什么有这些好处,可以结合第 5题来回答。

使⽤数据库系统可以⼤⼤提⾼应⽤开发的效率。

因为在数据库系统中应⽤程序不必考虑数据的定义、存储和数据存取的具体路径,这些⼯作都由 DBMS来完成。

此外,当应⽤逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独⽴性。

数据逻辑结构的改变是 DBA的责任,开发⼈员不必修改应⽤程序,或者只需要修改很少的应⽤程序。

从⽽既简化了应⽤程序的编制,⼜⼤⼤减少了应⽤程序的维护和修改。

使⽤数据库系统可以减轻数据库系统管理⼈员维护系统的负担。

因为 DBMS 在数据库建⽴、运⽤和维护时对数据库进⾏统⼀的管理和控制,包括数据的完整性、安全性,多⽤户并发控制,故障恢复等等都由DBMS执⾏。

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

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

习题51、 理解并给出下列术语的定义:1)设R(U)是一个属性集U 上的关系模式,X 和Y 是U 的子集。

若对于R(U)的任意一个可能的关系r ,r 中不可能存在两个元组在X 上的属性值相等, 而在Y 上的属性值不等, 则称 X 函数确定Y 或 Y 函数依赖于X ,记作X →Y 。

2) 完全函数依赖在R(U)中,如果X →Y ,并且对于X 的任何一个真子集X ’,都有Y 不函数依赖于X ’ ,则称Y 对X 完全函数依赖,记作Y X F −→−3) 部分函数依赖若X →Y ,但Y 不完全函数依赖于X ,则称Y 对X 部分函数依赖,记作Y X p−→−4) 传递函数依赖在R(U)中,如果X →Y ,(Y ⊆X) , Y →X ,Y →Z , 则称Z 对X 传递函数依赖。

记为:Z X T −→−注: 如果Y →X , 即X ←→Y ,则Z 直接依赖于X 。

5)候选码设K 为R (U,F )的属性或属性组合。

若U K F →, 则K 称为R 的侯选码。

6)主码:若候选码多于一个,则选定其中的一个作为主码。

7)外码:关系模式 R 中属性或属性组X 并非 R 的码,但 X 是另一个关系模式的码,则称 X 是R 的外部码(Foreign key )也称外码8)如果一个关系模式R 的所有属性都是不可分的基本数据项,则R ∈1NF.9)若R ∈1NF ,且每一个非主属性完全函数依赖于码,则R ∈2NF 。

10)如果R(U,F )∈2NF ,并且所有非主属性都不传递依赖于主码,则R(U,F )∈3NF 。

11)关系模式R (U ,F )∈1NF ,若X →Y 且Y ⊆ X 时X 必含有码,则R (U ,F ) ∈BCNF 。

12)关系模式R<U ,F>∈1NF ,如果对于R 的每个非平凡多值依赖X →→Y (Y ⊆ X ),X 都含有码,则R ∈4NF 。

2、 关系规范化的操作异常有哪些?1) 数据冗余大2) 插入异常3) 删除异常4) 更新异常3、 第一范式、第二范式和第三范式关系的关系是什么?4、 已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A->D,B->C,E-> A},该关系模式的候选码是什么?候选码为:(E,B)5、 已知学生表(学号,姓名,性别,年龄,系编号,系名称),存在的函数依赖集合是{学号->姓名,学号->性别,学号->年龄,学号->系编号,系编号->系名称},判断其满足第几范式。

数据库第五六七章作业答案

数据库第五六七章作业答案
2)查询数学系成绩80分以上的学生的学号、 姓名、选的课程号和成绩
select sno,sname,cno,grade from student join sc on student.sno=sc.sno where sdept=‘数学系’
and sno in (select sno from sc where grade>80)
on s.sno=sc.sno where grade >80 order by grade desc 13、查询哪些学生没有选课,要求列出学号、姓名和所在系
select s.sno,sname,sdept from student s left join sc on
s.sno=sc.sno where o is null
TWEEN 1 AND 5)
25、create table test_t(
col1 int, col2 char(10) not null, col3 char(10)) insert into test_t(col2) values(‘b1’) insert into test_t(col1,col2,col3) values(1,’b2’,’c2’) insert into test_t(col1,col2) values(2,’b3’)
26、删除考试成绩低于50分的学生的该门课程的选 课记录
delete from sc where grade<50 27、删除没有人选的课程记录
delete from course where cno not in
(select cno from sc) 28、删除计算机系VB成绩不及格学生的VB选课记
14、查询与VB在同一学期开设的课程的课程名和开课学期

数据库第五章习题及答案

数据库第五章习题及答案

第五章 关系数据理论一、 单项选择题1、设计性能较优的关系模式称为规范化,规范化主要的理论依据是 ( )A 、关系规范化理论B 、关系运算理论C 、关系代数理论D 、数理逻辑2、关系数据库规范化是为解决关系数据库中( )问题而引入的。

A 、插入、删除和数据冗余B 、提高查询速度C 、减少数据操作的复杂性D 、保证数据的安全性和完整性3、当关系模式R (A ,B )已属于3NF ,下列说法中( )是正确的。

A 、它一定消除了插入和删除异常B 、一定属于BCNFC 、仍存在一定的插入和删除异常D 、A 和C 都是4、在关系DB 中,任何二元关系模式的最高范式必定是( )A 、1NFB 、2NFC 、3NFD 、BCNF5、当B 属性函数依赖于A 属性时,属性A 与B 的联系是( )A 、1对多B 、多对1C 、多对多D 、以上都不是6、在关系模式中,如果属性A 和B 存在1对1的联系,则说( )A 、A B B 、B A C 、A B D 、以上都不是7、关系模式中,满足2NF 的模式,( )A 、可能是1NFB 、必定是1NFC 、必定是3NFD 、必定是BCNF8、关系模式R 中的属性全部是主属性,则R 的最高范式必定是( )A 、2NFB 、3NFC 、BCNFD 、4NF9、关系模式的候选关键字可以有( c ),主关键字有( 1个 )A 、0个B 、1个C 、1个或多个D 、多个10、如果关系模式R 是BCNF 范式,那么下列说法不正确的是( )。

A 、R 必是3NFB 、R 必是1NFC 、R 必是2NFD 、R 必是4NF11、图4.5中给定关系R ( )。

A 、不是3NFB 、是3NF 但不是2NFC 、是3NF 但不是BCNFD 、是BCNF12、设有如图4.6所示的关系R ,它是( )A 、1NFB 、2NFC 、3NFD 、4NF二、 填空题1、如果模式是BCNF ,则模式R 必定是(3NF ),反之,则( 不一定 )成立。

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

[习题 5.4]已知关系模式 R (ABC ),F 是 R 上成立的 FD
集,F ={A →B,B →C },
试写出 F 的闭包 F +。


解:据已知条件和推理规则,可知 F 有
43 个 FD : A → Φ
AB →Φ AC →Φ ABC →Φ B →Φ C →Φ A → A AB →A AC →A ABC →A B →B C →C A → B AB →B AC →B ABC →B B →C Φ→Φ
A → C A
B →
C AC →C ABC →C B →BC A → AB AB →AB AC →AB ABC → AB BC →Φ A → AC AB →AC AC →AC ABC → AC BC →B A → BC AB →BC AC →BC ABC → BC BC →C A → ABC
AB →ABC
AC → ABC
ABC → ABC
BC →BC
5.7 设关系模式 R (ABCD ),F 是 R 上成立的 FD 集, F ={A →B ,C →B} ,则相对于 F ,
试写出关系模式 R 的关键码。

并说明理由。

解: R 的关键码为 ACD ,因为从已知的 F ,只能推出 ACD → ABCD 。

5. 8 设关系模式 R ( ABCD ), F 是 R 上成立的 FD 集, F ={ A →B , B →C }

②试写出所有左部是
B 的函数依赖(即形为“ B →?”)。


解:①从已知的 F ,可推出 BD → BCD ,所以 BD 的闭包( BD ) = BCD 。


B → Φ,B → B,B →C,B → BC
5.11 设关系模式 R ( ABC ) ,F 是 R 上成立的 FD 集, F = { A → C ,B → C} ,试分别求
F 在模式 AB 和 AC 上的投影。

解: π AB (F )= Φ(即不存在非平凡的 FD )
πAC ( F )={ A →C }
5.12 设关系模式
R ( ABC ), F 是 R 上成立的 FD
集, F ={ B →A ,C →A }, ={ AB , BC }是 R 上的一个分解,那么分解 是否保持 FD 集 F ?并说明理
由。

解:已知 F ={ B →A ,C → A },而 π AB ( F )={ B →A }, πBC ( F )= Φ,
显然,分解
丢失了 FD
C →A 。

5.13 设关系模式 R ( ABC ),F 是 R 上成立的 FD 集, F ={ B →C ,C → A },那么分
解 ={ AB , AC }相对于 F ,是否无损分解和保持 FD ?并说明理由。

解: (1)已知 F ={ B →C , C →A }
π

而 π

A }, AC ( F )={ C A }
AB ( F )={ B
显然,这个分解丢失了 FD
B →
C 。

( 2)用测试过程可以知道,分解
相对于 F 是损失分解。

5.14 设关系模式 R ( ABCD ),F 是 R 上成立的 FD 集, F ={ A →B ,B →C ,A →D ,
D →C }, ={ AB , AC , BD} 是 R 的一个分解。

①相对于 F, 是无损分解吗?为什么?
②试求 F 在 的每个模式上的投影。

③ 保持 F 吗?为什么?
解:①用测试过程可以知道,
相对于 F 是损失分解。

② πAB ( F )={ A → B }, πAC (F )={ A →C }, πBD ( F )= Φ。

③显然,分解 不保持 FD 集 F ,丢失了 B →C , A →D ,和 D →C 等三个
FD 。

5.15 设关系模式R( ABCD ), R 上的 FD 集 F={ A →C,D →C,BD →A },试说明
={ AB , ACD , BCD }相对于F 是损失分解的理由。

答:据已知的 F 集,不可能把初始表格修改为有一个全 a 行的表格,因此相对
于 F 是损失分解。

5.16 设关系模式R(ABCD ), F 是 R 上成立的 FD 集, F={AB →CD, A→D }。

①试说明R 不是 2NF 模式的理由。

②试把 R 分解成 2NF 模式集。

解:①从已知FD 集 F,可知 R 的候选键是AB 。

另外, AB → D 是一个局部依赖,因此R 不是 2NF 模式。

②此时, R 应分解成{ AD,ABC }是 2NF 模式集。

5.17 设关系模式R(ABC ),F 是 R 上成立的FD 集, F={ C→ B,B→ A }。

①试说明R 不是 3NF 模式的理由。

②试把 R 分解成 3NF 模式集。

解:①从已知FD 集 F,可知 R 的候选键是C。

从 C → B 和 B → A,可知 C → A是一个传递依赖,因此R不是3NF
模式。

②此时, R 应分解为{ CB, BA }即为 3NF 模式集。

5.18 设有一个记录各个球队队员每场比赛进球数的关系模式
R(队员编号,比赛场次,进球数,球队名,队长名)
如果规定每个队员只能属于一个球队,每个球队只有一个队长。

①试写出关系模式R 的基本 FD 和关键码。

②说明 R 不是 2NF 模式的理由,并把R 分解成 2NF 模式集。

③进而把R 分解成 3NF 模式集,并说明理由。

解:( 1)根据每个球员只能属于一个球队,可写出FD :队员编号→球队名;
根据每个球队只有一个队长,可写出FD :球队名→队长名;
“每个队员每场比赛只有一个进球数”,这条规则也是成立的,因此还可
以写出 FD :(队员编号,比赛场次)→进球数
从上述三个FD 可知道, R 的关键码为(队员编号,比赛场次)。

(2)从( 1)可知, R 中存在下面两个 FD:
(队员编号,比赛场次)→ (球队名,队长名 )
队员编号→ (球队名,队长名)
显然,其中第一个FD 是一个局部依赖,因此R 不是 2NF 模式。

对 R 应该进行分解由第二个FD 的属性可构成一个模式,即
R1(队员编号,球队名,队长名);
另一个模式由R 的属性集去掉第二个FD 属性右边的属性组成,即
R2(队员编号,比赛场次,进球数)。

R1 和 R2 都是 2NF 模式,因此分解为2NF 模式集为{ R1, R2}
(3) R2(队员编号,比赛场次,进球数)中FD 是
(队员编号,比赛场次)→进球数
关键码为(队员编号,比赛场次),可见 R2 已是 3NF 。

R1(队员编号,球队名,队长名)中,FD 有两个:
队员编号球队名


球队名
队长名
—2
关键码为队员编号,可见存在传递依赖,因此R1 不是 3NF 模式。

对 R1 应分解成两个模式: R11(队员编号,球队名), R12(球队名,队长
名)。

这两个模式都是 3NF 模式。

因此, R 分解成 3NF 模式集为{ R11, R12, R2}。

5.19 设有关系模式
R(职工名,项目名,工资,部门名,部门经理)
如果规定每个职工可参加多个项目,各领一份工资;每个项目只属于一个部门管理;每个部门只有一个经理。

①试写出关系模式R 的基本 FD 和关键码。

②说明 R 不是 2NF 模式的理由,并把R 分解成 2NF 模式集。

③进而把R 分解成 3NF 模式集,并说明理由。

解:( 1) R 的基本 FD 有三个:
(职工名,项目名)→工资
项目名→部门名
部门名→部门经理
关键码为(职工名,项目名)。

( 2)根据( 1), R 中存在下列两个FD:
(职工名,项目名)→(部门名,部门经理)
项目名→(部门名,部门经理)
其中前一个FD 是一个局部依赖,因此R 不是 2NF 模式。

R 应分解成两个模式:R1(项目名,部门名,部门经理)
R2 (职工名,项目名,工资)
R1 和 R2 都是 2NF 模式。

(3) R2 已是 3NF 模式。

在 R1 中,由于存在两个 FD:
项目名→部门名
部门名→部门经理
即存在一个传递依赖,因此R1 不是 3NF 模式。

对 R1 应分解成两个模式: R11(项目名,部门名), R12(部门名,部门经理)。


两个模式都是 3NF 模式。

因此, R 分解成 3NF 模式集时,为{ R11, R12, R2}。

—3。

相关文档
最新文档