数据库系统概论复习资料
第一章:
一选择题:
1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是 阶段。 A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 答案:A
2.数据库的概念模型独立于 。A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界 答案:A
3.数据库的基本特点是 。
A.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余大,易移植 (4)统一管理和控制 B.(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制 C.(1)数据可以共享(或数据结构化) (2)数据互换性 (3)数据冗余小,易扩充 (4)统一管理和控制
D.(1)数据非结构化 (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制 答案:B
4. 是存储在计算机内有结构的数据的集合。 A.数据库系统 B.数据库 C.数据库管理系统D.数据结构 答案:B
5.数据库中存储的是 。 A.数据 B.数据模型 C.数据以及数据之间的联系 D.信息 答案:C
6. 数据库中,数据的物理独立性是指 。
A.数据库与数据库管理系统的相互独立 B.用户程序与DBMS的相互独立
C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 .. D.应用程序与数据库中数据的逻辑结构相互独立 答案:C
7. .数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 。 A.同一个应用中的多个程序共享一个数据集合 B.多个用户、同一种语言共享数据
C.多个用户共享一个数据文件 D.多种应用、多种语言、多个用户相互覆盖地使用数据集合 答案:D
8.据库系统的核心是 。A.数据库B.数据库管理系统 C.数据模型 D.软件工具 答案:B
9. 下述关于数据库系统的正确叙述是 。
A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余
C.数据库系统中数据的一致性是指数据类型一致 D.数据库系统比文件系统能管理更多的数据 答案:A
10. 数将数据库的结构划分成多个层次,是为了提高数据库的 ① 和 ② 。 ①A.数据独立性 B.逻辑独立性 C.管理规范性 D.数据的共享
②A.数据独立性 B.物理独立性 C.逻辑独立性 D.管理规范性 答案:①B ②B
11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是答案:A 。
A.DBS包括DB和DBMS B.DDMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 12. 在数据库中,产生数据不一致的根本原因是 。
A.数据存储量太大 B.没有严格保护数据 C.未对数据进行完整性控制 D.数据冗余 答案:D
13. 数据库管理系统(DBMS)是 A.数学软件B.应用软件 C.计算机辅助设计 D.系统软件 答案:D
14. 数据库管理系统(DBMS)的主要功能是 。A.修改数据库 B.定义数据库 C.应用数据库D.保护数据库 答案:B
15. 数据库系统的特点是 、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。 A.数据共享 B.数据存储 C.数据应用 D.数据保密 答案:A 16据库系统的最大特点是 。
A.数据的三级抽象和二级独立性 B.数据共享性 C.数据的结构化 D.数据独立性 答案:A
17. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为 。 A.数据定义功能 B.数据管理功能 C.数据操纵功能 D.数据控制功能 答案:C
18. 数据库管理系统是 。
A.操作系统的一部分 B.在操作系统支持下的系统软件 C.一种编译程序 D.一种操作系统 答案:B
19.据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是() A.外模式 B.内模式 C.存储模式 D.模式 答案:D
20据库系统的数据独立性是指 。
A.不会因为数据的变化而影响应用程序 B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其他的存储结构 答案:B
21.信息世界中的术语,与之对应的数据库术语为 A.文件 B.数据库 C.字段 D.记录 答案:D
22次型、网状型和关系型数据库划分原则是 。
A.记录长度 B.文件的大小 C.联系的复杂程度 D.数据之间的联系 答案:D
23.传统的数据模型分类,数据库系统可以分为三种类型 。
A.大型、中型和小型 B.西文、中文和兼容 C.层次、网状和关系 D.数据、图形和多媒体 答案:C
24. 层次模型不能直接表示 A. 1 :1关系 B.1 :m关系 C. m :n关系 D.1 :1和1 :m关系 答案:C
25. 数据库技术的奠基人之一E.F.Codd从1970年起发表过多篇论文,主要论述的是 。
A.层次数据模型 B.网状数据模型 C.关系数据模型 D.面向对象数据模型 答案:C 二、填空题
1. 数据管理技术经历了 人工管理 、 文件系统 和 数据库系统 三个阶段。 答案:①人工管理 ②文件系统 ②数据库系统
2. 数据库是长期存储在计算机内、有 组织的、可共享的数据集合。 答案:①组织 ②共享
3.DBMS是指 数据库管理系统 它是位于 用户 和 操作系统 之间的一层管理软件。
4. 数据库管理系统的主要功能有数据定义功能 、数据操纵功能 、数据库的运行管理和数据库的建立以及维护等4个方面。
答案:①数据定义功能 ②数据操纵功能
5. 数据独立性又可分为逻辑数据独立性 和 物理数据独立性。 答案:①逻辑数据独立性 ②物理数据独立性
6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的 物理独立性 。 答案:物理独立性
7. 数据模型是由数据结构 、数据操作 和完整性约束 三部分组成的。 答案:①数据结构 ②数据操作 ③完整性约束
8. 数据结构 是对数据系统的静态特性的描述,数据操作 是对数据库系统的动态特性的描述。 答案:①数据结构 ②数据操作
9. 数据库体系结构按照 模式 、 外模式 和 内模式 三级结构进行组织。 答案:①模式 ②外模式 ③内模式
10. 实体之间的联系可抽象为三类,它们是 1∶1 、 1∶m 和 m∶n 。 答案:①1∶1 ②1∶m ②m∶n
11.数据冗余可能导致的问题有 ① 和 ② 。 答案:①浪费存储空间及修改麻烦 ②潜在的数据不一致性
第一章补充作业部分: 假设教学管理规定:
①一个学生可选修多门课,一门课有若干学生选修;②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩。 学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。
要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型; 解答:
学课程选课程
姓学生 课程 成讲教师
教师编教师姓第2章关系数据库
一、选择题
1、关系数据库管理系统应能实现的专门关系运算包括 。
A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表 答案:B
2、关系模型中,一个关键字是 。
A.可由多个任意属性组成 B.至多由一个属性组成
C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成 D.以上都不是 答案:C
3、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 。 A.元组 B.行 C.记录 D.属性 答案:D
4、关系运算中花费时间可能最长的运算是 。 A.投影 B.选择 C.笛卡尔积 D.除 答案:C
5.关系模式的任何属性 A.不可再分 B.可再分 C.命名在该关系模式中可以不惟一 D.以上都不是 答案:A
6.在关系代数运算中,五种基本运算为 。
A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影 C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 答案:C
7、设有关系R,按条件f对关系R进行选择,正确的是 A.RR B.R R C. f(R) D.f(R) 答案:C
8、如图所示,两个关系R1和R2,它们进行 运算后得到R3。
R1
A A C D
A.交 B.并 C.笛卡尔积 D.连接 答案:D
二、填空题
1、一个关系模式的定义格式为 。 答案:关系名(属性名1,属性名2,„,属性名n) 2、.一个关系模式的定义主要包括 关系名 、属性名 、 属性类型 、
属性长度 和关键字 。 答案:①关系名 ②属性名 ③属性类型 ④属性长度 ⑤关键字 3、.关系代数运算中,传统的集合运算有① 、②、③ 和 ④ 。 答案:①笛卡尔积 ②并 ③交 ④差
4、关系代数运算中,基本的运算是 ① 、 ② 、③、④ 和⑤。 答案:①并 ②差 ③笛卡尔积 ④投影 ⑤选择 5、关系代数运算中,专门的关系运算有 选择 、 投影 和 连接 。 答案:①选择 ②投影 ③连接 6、关系数据库中基于数学上两类运算是关系代数 和关系演算 。答案:①关系代数 ②关系演算
B 1 2 1 C X Y y
A C C 1 1 2 X Y y M M N I I J R3
A B C D E D 1 2 5 E M N M M I J K
7、.已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是 ① ,系关系的外关键字 ② ,学生关系的主关键字是 ③ ,外关键字 ④ 答案:①系编号 ②无 ③学号 ④系编号 三、应用题:
关系R和S如下图所示,试计算R÷S。 R÷S=
R
A a a a b b B b b b d d C c e h e d c e D d f k f l d f S C c e D d f c c k k
第3章关系数据库标准语言SQL
一、选择题
1、SQL语言是 的语言,易学习。 A.过程化 B.非过程化 C.格式化 D.导航式 答案:B
2、SQL语言是 语言。
A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 答案:C
3、SQL语言具有 的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 答案:B
4、SQL语言具有两种使用方式,分别称为交互式SQL和 。 A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL 答案:C
5、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。 要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系 。 A.S B.SC,C C.S,SC D.S,C,SC 答案:D
6、如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键
字是部门号,SQL操作 不能执行。
A.从职工表中删除行(‘025’,‘王芳’,‘03’,720) B.将行(‘005,’,‘乔兴’,‘04’,750)插入到职工表中
C.将职工号为,‘001’的工资改为700 D.将职工号为,’038’的部门号改为‘03’ 答案:B
7、若用如下的SQL语句创建一个student表: CREATE TABLE student(NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2))
可以插入到student表中的是 。
A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)
C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 答案:B 第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE)
其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。
8、检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是 a 。 A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王华”) B.SELECT SN,AGE,SEX FROM S
WHERE SN=“王华”
9、检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是 答案:DA.SELECT S# FORM SC WHERE C#=“C2” AND GRAD>= (SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”)
10、检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是 A.SELECT S.SN,SC.C#,SC.GRADE FROM S
WHERE S.S#=SC.S#
B.SELECT S.SN,SC.C#,SC.GRADE C.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2” C.SELECT SN,AGE,SEX FROM S
WHERE AGE>(SELECT AGE
WHERE SN=“王华”)
D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE
FROM SC
WHERE S.S#=SC.GRADE C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC 答案:C
11、检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是 。
A.SELECT S#,SUM(GRADE)FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC
HAVING COUNT(*)>=4 WHERE C#=“C2” AND GRADE>=
(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE IN
SELECT GRADE FORM SC
WHERE C#=“C2”)
答案:D
二、填空题
1、SQL是 结构化查询语言 。 答案:结构化查询语言
2、视图是一个虚表,它是从 ① 中导出的表。在数据库中,只存放视图的 ② ,不存放视图的 ③ 。 答案:①一个或几个基本表 ②定义 ③视图对应的数据 3、设有如下关系表R:
R(No,NAME,SEX,AGE,CLASS) 主关键字是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。 写出实现下列功能的SQL语句。
①插入一个记录(25,“李明”,“男”,21,“95031”); 。①INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”) ②插入“95031”班学号为30、姓名为“郑和”的学生记录; 。②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”) ③将学号为10的学生姓名改为“王华”; 。③UPDATE R SET NAME=“王华”WHERE NO=10
④将所有“95101”班号改为“95091”; 。④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101” ⑤删除学号为20的学生记录; 。⑤DELETE FROM R WHERE NO=20
⑥删除姓“王”的学生记录; 。⑥DELETE FROMR WHERE NAME LIKE“王%”
(
C.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”)
D..SELECT S#,SUM(GRADE)FROM SC WHERE S.S#=SC.S#
D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC
WHERE GRADE>=60 GROUP BY S#
HAVING COUNT(*)>=4 ORDER BY2DESC
第3章书面作业
1、设学生课程数据库中有三个关系:
学生关系S(S#,SNAME,AGE,SEX) 学习关系SC(S#,C#,GRADE) 课程关系C(C#,CNAME) 其中S#、C#、SNAME、AGE、SEX、GRADE、CNAME分别表示学号、课程号、姓名、年龄、性别、成绩和课程名。 用SQL语句表达下列操作
(1)检索选修课程名称为“MATHS”的学生的学号与姓名 (2)检索至少学习了课程号为“C1”和“C2”的学生的学号
(3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄 (4)检索平均成绩超过80分的学生学号和平均成绩 (5)检索选修了全部课程的学生姓名 (6)检索选修了三门课以上的学生的姓名
答案:(1)SELECT S#, FROM S,SC,C WHERE S.S#=SC.S# AND C.C#=SC.C# AND CNAME=’ MATHS’ (2) SELECT S# FROM SC
WHERE CNO=’C1’ AND S# IN( SELECT S# FROM SC
WHERE CNO=’C2’) (3)SELECT S#,SNAME,AGE FROM S
WHERE AGE BETWEEN 18 AND 20 (4) SELECT S# ,AVG(GRADE) ‘平均成绩’ FROM SC GROUP BY S#
HAVING AVG(GRADE)>80
2、设学生-课程数据库中包括三个表:
学生表:Student (Sno,Sname,Sex,Sage,Sdept) 课程表:Course(Cno,Cname,Ccredit)
学生选课表:SC(Sno,Cno,Grade) 其中Sno、Sname、Sex、Sage、Sdept、 Cno、Cname、Ccredit 、Grade分别表示学号、
姓名、性别、年龄、所在系名、课程号、课程名、学分和成绩。
试用SQL语言完成下列项操作:(1)查询选修课程包括“1042”号学生所学的课程的学生学号 (2)创建一个计科系学生信息视图S_CS_VIEW,包括Sno学号、Sname姓名、Sex性别; (3)通过上面第2题创建的视图修改数据,把王平的名字改为王慧平
(4)创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、姓名、成绩。 (1) SELECT DISTINCT SNO 答案:
FROM SC SCX WHERE NOT EXISTS (SELECT * FROM SC SCY
WHERE SCY.SNO = ' 1042' AND NOT EXISTS (SELECT * FROM SC SCZ
WHERE SCZ.SNO=SCX.SNO AND
SNAME
(5) SELECT SNAME
FROM S
WHERE NOT EXISTS
(SELECT * FROM C
WHERE NOT EXISTS (SELECT * FROM SC
WHERE S#=S.S# AND C#=C.C# )
)
(6) SELECT SNAME FROM S,SC WHERE S.S#=SC.S# GROUP BY SNAME
HAVING COUNT(*)>3
SCZ.CNO=SCY.CNO)); (2) CREATE VIEW S_CS_VIEW AS
SELECT SNO,SNAME,SEX FROM STUDENT WHERE Sdept=’CS’ (3)UPDATE S_CS_VIEW SET SNAME=’ 王慧平’
WHERE SNAME=’ 王平’ (4) CREATE VIEW datascore_view AS
SELECT SNO 学号、SNAME 姓名、GRADE 成绩 FROM STUDENT,SC,COURSE WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND CNAME=’ 数据库’
第4章数据库的安全性
一、选择题
1、下面哪个不是数据库系统必须提供的数据控制功能 。 A.安全性 B.可移植性 C.完整性 D.并发控制 答案:B
2、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。这是指数据的 。
A.安全性 B.完整性 C.并发控制 D.恢复 答案:A
3、数据库的 完整性 是指数据的正确性和相容性。 A.安全性 B.完整性 C.并发控制 D.恢复 答案:B
4、在数据系统中,对存取权限的定义称为 。 A.命令 B.授权 C.定义 D.审计 答案:B
5、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 。
A.可靠性 B.一致性 C.完整性 D.安全性 答案:D 6、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是 C
A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLIC C.REVOKE UPDATE(XH) ON STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC 7、把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是
A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAO
C)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 答案:C
8、在SQL Server 中删除触发器用( )
。A.ROLLBACK B. DROP C.DELALLOCATE D. DELETE 答案:B 二、填空题
1、保护数据安全性的一般方法是 设置用户标识和存取权限控制 。 答案:设置用户标识和存取权限控制
2、安全性控制的一般方法有①、②、③、④和视图的保护五级安全措施。 答案:①用户标识鉴定 ②存取控制 ③审计 ④数据加密 3、存取权限包括两方面的内容,一个是 ① ,另一个是 ②。 答案:①要存取的数据对象 ②对此数据对象进行操作的类型 4、在数据库系统中对存取权限的定义称为授权 。 答案:授权
5、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用 ① 语句,收回所授的权限使用 ② 语句。 答案:①GRANT ②REVOKE
6、DBMS存取控制机制主要包括两部分:自主存取控制,_强制存取控制_______________。 答案:强制存取控制
7、 当对某一表进行诸如( )、 ( )、 ( ) 这些操作时,SQL Server 就会自动执行触发器所定义的SQL 语句。
答案:INSERT,DELETE,UPDATE
第5章数据库完整性
一、选择题:
1、在数据库系统中,保证数据及语义正确和有效的功能是 ( d ) A.并发控制 B.存取控制 C.安全控制 D.完整性控制 2、关于主键约束以下说法错误的是( )
A. 一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束
C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 答案:C
3、在表或视图上执行除了(D )以外的语句都可以激活触发器。 A.Insert B. Delete C. Update
D.Create
4、数据库的____是指数据的正确性和相容性。
A.安全性 B.完整性 C.并发控制 D.恢复 答案:B
5、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的________约束。 A、 实体完整性B、参照完整性C、用户自定义D、用户操作 答案:C 二、填空题
1.数据库的完整性是指数据的 ① . ②__和 ③ 。答案:①实体完整性 ②参照完整性 ③用户定义完整性 2、实体完整性是指在基本表中,主属性不能取空值 。 答案:主属性不能取空值
3、参照完整性是指在基本表中, 。 答案:外码可以是空值或者另一个关系主码的有效值
4、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就 。答案:拒绝此操作
第6章关系数据理论
一、选择题
1、关系规范化中的删除操作异常是指 ① ,插入操作异常是指 ② 。
A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入 答案:①A ②D
2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是 。
A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑 答案:A
3、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及冗余度大 的缺陷。 A.数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失 答案:C
4、当关系模式R(A,B)已属于3NF,下列说法中 是正确的。
A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常 C.一定属于BCNF D.A和C都是 答案:B
5、关系模型中的关系模式至少是
A.1NF B.2NF C.3NF D.BCNF 答案:A
6、在关系DB中,任何二元关系模式的最高范式必定是 d
A.1NF B.2NF C.3NF D.BCNF
7、在关系模式R中,若其函数依赖集中所有候选关键字都是决定因素,则R最高范式是 。 A.2NF B.3NF C.4NF D.BCNF 答案:C 8、候选关键字中的属性称为 。
A.非主属性 B.主属性 C.复合属性 D.关键属性 答案:B
9、消除了部分函数依赖的1NF的关系模式,必定是 。A.1NF B.2NF C.3NF D.4NF 答案:B
10、关系模式的候选关键字可以有 ① c ,主关键字有 ② b 。
A.0个 B.1个 C.1个或多个 D.多个 11、关系模式的分解不惟一 。
A.惟一 B.不惟一 答案:B
12、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”关系中,因哪个属性而使它不满足第一范式? 。 部门(部门号,部门名,部门成员,部门总经理)
A.部门总经理 B.部门成员 C.部门名 D.部门号 答案:B 二、填空题
1、在关系A(S,SN,D)和B(D,CN,NM中,A的主键是S,B的主键是D,则D在S中称为 。答案:外部键
2、对于非规范化的模式,经过 ① 转变为1NF,将1NF经过 ② 转变为2NF,将2NF经过 ③ 转变为3NF。 答案:①使属性域变为简单域 ②消除非主属性对主关键字的部分依赖③消除非主属性对主关键字的传递依赖
3、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和无损连接性 。 答案:无损连接性
三、概念解释: 1、 平凡的函数依赖
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但Y X,则称X→Y是非平凡的函数依赖 2、 非平凡的函数依赖
在关系模式R(U)中,对于U的子集X和Y,
若X→Y,但Y X, 则称X→Y是平凡的函数依赖 四、综合练习
1、已知学生关系模式
S(Sno,Sname,SD,Sdname,Course,Grade)
其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。 (1)写出关系模式S的基本函数依赖和主码。
(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么? (3)将关系模式分解成3NF,并说明为什么? (1)写出关系模式S的基本函数依赖和主码。 答: 关系模式S的基本函数依赖如下:
Sno→Sname,SD→Sdname,Sno→SD,(Sno,Course) →Grade 关系模式S的码为:(Sno,Course)。
(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么?
答: 原关系模式S是属于1NF的,码为(Sno,Course),非主属性中的成绩完全依赖于码,而其它非主属性对码的函数依赖为部分函数依赖,所以不属于2NF。
消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下: S1(Sno,Sname,SD,Sdname) S2(Sno,Course,Grade)
(3)将关系模式分解成3NF,并说明为什么? 答: 将上述关系模式分解成3NF如下:
关系模式S1中存在Sno→SD,SD→Sdname,即非主属性Sdname传递依赖于Sno,所以S1不是3NF。进一步分解如下: S11(Sno,Sname,SD) S12(SD,Sdname)
分解后的关系模式S11、S12满足3NF。
对关系模式S2不存在非主属性对码的传递依赖,故属于3NF。所以,原模式S(Sno,Sname,SD,Sdname,Course,Grade)按如
下分解满足3NF。 S11(Sno,Sname,SD)
S12(SD,Sdname) S2(Sno,Course,Grade) 2、设有如下关系R
(1)它为第几范式? 为什么?
(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的?
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题? (1)它为第几范式? 为什么?
解:它是2NF。 因为R的候选关键字为“课程名”。 依赖关系: 课程名→教师名,教师名 → 课程名,教师名→教师地址,所以 课程名→教师地址。即存在非主属性“教师地址”对候选关键字课程名的传递函数,因此R不是3NF。但:因为不存在非主属性对候选关键字的部分函数依赖,所以R是2NF。
(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的? 解: 存在。当删除某门课程时会删除不该删除的教师的有关信息。
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题?
解: 分解为高一级范式如图所示 。R1如下: R2如下:
分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。
3、设某商业集团数据库中有一关系模式R如下: R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:(1) 每个商店的每种商品只在一个部门销售;(2) 每个商店的每个部门只有一个负责人;(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:(1) 根据上述规定,写出关系模式R的基本函数依赖;
答: 关系模式S的基本函数依赖如下: (商店编号,商品编号) →部门编号,(商店编号,部门编号)→负责人,(商店编号,商品编号) →数量
(2) 找出关系模式R的候选码;答:关系模式R的码为:(商店编号,商品编号, 部门编号)。
(3) 试问关系模式R最高已经达到第几范式?为什么?答: 原关系模式R是属于1NF的,码为(商店编号,商品编号, 部门编号),非主属性对码的函数依赖全为部分函数依赖,所以不属于2NF。
消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下: R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人) (4) 如果R不属于3NF,请将R分解成3NF模式集。答:将R分解为
R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人) 分解后的R不存在传递的函数依赖,所以分解后的R已经是第3NF
第7章数据库设计
一、选择题
1、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的 阶段。
A.需求分析 答案:B
2、在关系数据库设计中,设计关系模式是 的任务。
A.需求分析阶段 答案:C
3、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是 。
A.建立库结构 答案:B
4、在数据库的概念设计中,最常用的数据模型是 。
A.形象模型 答案:D
5、从E-R模型关系向关系模型转换时,一个M∶N联系转换为关系模型时,该关系模式的关键字是 。
A.M端实体的关键字 B.N端实体的关键字 C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性 答案:C 6、当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是 。
A.属性冲突
B.语法冲突
C.结构冲突
D.命名冲突 答案:B
C.操作系统和DBMS
D.DBMS 答案:B
B.物理模型
C.逻辑模型
D.实体联系模型
B.扩充功能
C.加载数据
D.系统调试
B.概念设计阶段
C.逻辑设计阶段
D.物理设计阶段
B.概念设计
C.逻辑设计
D.物理设计
7、概念模型独立于 A.E-R模型 B.硬件设备和DBMS
8、数据流程图(DFD)是用于描述结构化方法中 c 阶段的工具。A.可行性分析 B.详细设计 C.需求分析 D.程序编码
9、下图所示的E-R图转换成关系模型,可以转换为 c 关系模式。A.1个B.2个 C.3个 D.4个
二、填空题
1、数据库设计的几个步骤是 。答案:需求分析,概念设计,逻辑设计,物理设计,系统实施,系统运行和维护 2、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库 设计阶段。答案:物理
3、在数据库设计中,把数据需求写成文档,它是各类数据描述的集合,包括数据项、数据结构、数据流、数据存储和数据加工过程等的描述,通常称为 。答案:数据字典
4、在设计分E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计的,所以各个分E-R图之间难免有不一致的地方,这些冲突主要有 ① 、 ② 和 ③ 三类。答案:①属性冲突 三、应用题
设有如下实体:学生:学号、单位、姓名、性别、年龄、选修课程名 课程:编号、课程名、开课单位、任课教师号 教师:教师号、姓名、性别、职称、讲授课程编号 单位:单位名称、电话、教师号、教师名
上述实体中存在如下联系:
(1).一个学生可选修多门课程,一门课程可为多个学生选修;(2).一个教师可讲授多门课程,一门课程可为多个教师讲授;(3).一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下工作:(1).分别设计学生选课和教师任课两个局部信息的结构E-R图。(2).将上述设计完成的E-R图合并成一个全局E-R图。(3).将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。 解:(1).学生选课、教师任课局部E-R图如下所示。
教师号 姓名 性别 年龄 学号 姓名 性别 年龄 编号 课程名 单位名 单位
②命名冲突
③结构冲突
借书证姓名 单位 总编号 分类号 书名 借书人 借阅日期 位置 价格 图书 作者 m 借阅 n 1 1 拥有 开课 m m 学生 m 选修 课程 教师号 学生选课局部E-R图
m m
讲授 n 课程 编号
教师
(2).合并后的全局E-R图如下所示。
为避免图形复杂,下面给出各实体属性:
单位:单位名、电话 学生:学号、姓名、性别、年龄 教师:教师号、姓名、性别、职称 课程:编号、课程号 (3).该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:
单位(单位名,电话) 教师(教师号,姓名,性别,职称,单位名) 课程(课程编号,课程名,单位名) 学生(学号,姓名,性别,年龄,单位名) 讲授(教师号,课程编号) 选修(学号,课程编号)
拥有 开课 单位 单位名 电话 属于 1 单位教师授课局部E-R图
属于 1 m 教师 1 1 m 讲授 m m 学生 m n 选修 n 课程 全局E-R图
第8章数据库编程
一、选择题
1、修改存储过程使用的语句是( )。
A. ALTER PROCEDURE B. DROP PROCEDURE C. INSERT PROCEDUE D. DELETE PROCEDUE 答案:A
2、创建存储过程的语句是( )。
A. ALTER PROCEDURE B. DROP PROCEDURE C. CREATE PROCEDUE D. INSERT PROCEDUE 答案:C
3、下面( )组命令,将变量count值赋值为1。 答案:A
A.DECLARE @count SELECT @count=1 C.DECLARE count
SELECT count=1 B.DIM count=1
D.DIM @count
4在SQL Server 中删除存储过程用( )。
A.ROLLBACK B. DROP PROC C.DELALLOCATE D. DELETE PROC 答案:B
10.在SQL Server 编程中,可使用( )将多个语句捆绑。 A.{ } B. BEGIN-END C.( ) D. [ ] 答案:B 二、填空题
1、 在T-SQL编程语句中,WHILE结构可以根据条件多次重复执行一条语句或一个语句块,还可以使用 ( ) 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。 答案:BREAK
2、 存储过程是存放在( )上的预先定义并编译好的T-SQL语句。 答案:SQL SERVER服务器上 3、游标是系统为用户开设的一个( ),存放SQL语句的执行结果 答案:数据缓冲区
SELECT @count=1
第10章数据库恢复技术
1、 是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A.程序
B.命令
C.事务
D.文件 答案:C
2、事务的原子性是指 答案:A
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 3、事务的一致性是指 。答案:D
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据为的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 4、事务的隔离性是指 。答案:C
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 5、事务的持续性是 b 。
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事力内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 6、若数据库中只包含成功事务提交的结果,则此数据库就称为处于 状态。
A.安全
B、.一致
C.不安全
D.不一致 答案:B
7、若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为 。
A.事务故障
B.系统故障
C.介质故障
D.运行故障 答案:B
8、若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为 。
A.事务故障
B.系统故障
C.介质故障
D.运行故障 答案:C
9、 用来记录对数据库中数据进行的每一次更新操作。
A.后援副本
B.日志文件
C.数据库
D.缓冲区 答案:B
10、用于数据库恢复的重要文件是 。
A.数据库文件 B.索引文件
C.日志文件
D.备注文件 答案:C
11、数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括 。
A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、日志文件、审计档案
C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本 答案:C 一、 填空题
1、 是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。答案:事务
2、.若事务在运行过程中,由于种种原因,使事务未运行到正常终止点之间就被撤消,这种情况就称为 。答案:事务故障 3、数据库恢复是将数据库从 ① 状态恢复到 ② 的功能。 答案:①错误 ②某一已知的正确状态
4、数据库系统在运行过程中,可能会发生故障。故障主要有①、 ② 、介质故障和③四类。答案:①事务故障②系统故障 ③计算机病毒 5、数据库系统是利用存储在外存上其他地方的 ① 来重建被破坏的数据库。它主要有两种: ② 和 ③ 。
答案:①冗余数据
②后援副本
③日志文件
第11章 并发控制
一、 选择题:
1、.设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。
A.该操作不存在问题 T1 ①读A=10 ② ③A=A-5写回 ④ 2、设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。
T1 ①读A=10,B=5 ②③读A=20,B=5求和25验证错 T2 读A=10 A=A*2写回
A.该操作不存在问题 C.该操作不能重复读 答案:C
B.该操作丢失修改
D.该操作读“脏”数据
T2 读A=10 A=A-8写回
B.该操作丢失修改 C.该操作不能重复读
D.该操作读“脏”数据 答案:B
3、设有两个事务T1、T2,其并发操作如下所示,下列评价正确的是 。
T1 ①读A=100 A=A*2写回 ② ③ROLLBACK恢复A=100 读A=10
4、解决并发操作带来的数据不一致性总是普遍采用 。
A.封锁
B.恢复
C.存取控制
D.协商 答案:A
T2 A.该操作不存在问题 C.该操作不能重复读 答案:D
B.该操作丢失修改
D.该操作读“脏”数据
5、若事务T对数据R已经加X锁,则其他事务对数据R 。
A.可以加S锁不能加X锁
B.不能加S锁可以加X锁 C.可以加S锁也可以加X锁
D.不能加任何锁 答案:D
6、关于“死锁”,下列说法中正确的是 。
A.死锁是操作系统中的问题,数据库操作中不存在 B.在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库 C.当两个用户竞争相同资源时不会发生死锁 D.只有出现并发操作时,才有可能出现死锁 答案:D 7、对并发操作若不加以控制,可能会带来 问题。
A.不安全
B.死锁
C.死机
D.不一致 答案:D
8、并发操作会带来哪些数据不一致性 。
A.丢失修改、不可重复读、脏读、死锁 B.不可重复读、脏读、死锁
C.丢失修改、脏读、死锁 D.丢失修改、不可重复读、脏读 答案:D 填空题
1、DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是 机制。 答案:封锁
2、有两种基本类型的锁,它们是 ① 和 ② 。答案:①共享锁 ②排它锁
因篇幅问题不能全部显示,请点此查看更多更全内容