资源描述
数据库系统概论复习资料
第1章:
一选择题:
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.DBS包括DB和DBMS B.DDMS包括DB和DBS
C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 答案:A
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
11.数据冗余可能导致的问题有①和②。 答案:①浪费存储空间及修改麻烦 ②潜在的数据不一致性
三:简答题:
1. 什么是数据库?
答:数据库是长期存储在计算机内、有组织的、可共享的数据集合。数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用。因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性。
2. 什么是数据库的数据独立性?
答:数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。
逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性。当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。
物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立。
3. 什么是数据库管理系统?
答:数据库管理系统(DBMS)是操纵和管理数据库的一组软件,它是数据库系统(DBS)的重要组成部分。不同的数据库系统都配有各自的DBMS,而不同的DBMS各支持一种数据库模型,虽然它们的功能强弱不同,但大多数DBMS的构成相同,功能相似。
一般说来,DBMS具有定义、建立、维护和使用数据库的功能,它通常由三部分构成:数据描述语言及其翻译程序、数据操纵语言及其处理程序和数据库管理的例行程序。
第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.R´R B.R wv R C. sf(R) D.Pf(R)
F 答案:C
8、如图所示,两个关系R1和R2,它们进行运算后得到R3。
R1 R2
A
B
C
A
C
D
1
2
1
X
Y
y
D
E
M
1
2
5
M
N
M
I
J
K
R3
A
B
C
D
E
A
C
C
1
1
2
X
Y
y
M
M
N
I
I
J
A.交 B.并 C.笛卡尔积 D.连接 答案:D
9、数据库的是指数据的正确性和相容性。
A.安全性 B.完整性 C.并发控制 D.恢复 答案:B
10、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的________约束。
A、 实体完整性B、参照完整性C、用户自定义D、用户操作 答案:C
二、填空题
1、一个关系模式的定义格式为 。 答案:关系名(属性名1,属性名2,…,属性名n)
2、一个关系模式的定义主要包括①、②、③、
④和⑤。 答案:①关系名 ②属性名 ③属性类型 ④属性长度 ⑤关键字
3、.关系代数运算中,传统的集合运算有①、②、③和④。 答案:①笛卡尔积 ②并 ③交 ④差
4、关系代数运算中,基本的运算是①、②、③、
④和⑤。 答案:①并 ②差 ③笛卡尔积 ④投影 ⑤选择
5、关系代数运算中,专门的关系运算有①、②和③。 答案:①选择 ②投影 ③连接
6、关系数据库中基于数学上两类运算是①和②。答案:①关系代数 ②关系演算
7、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是①,系关系的外关键字②,学生关系的主关键字是③,外关键字④ 答案:①系编号 ②无 ③学号 ④系编号
8.数据库的完整性是指数据的①.②__和③。答案:①实体完整性 ②参照完整性 ③用户定义完整性
9、实体完整性是指在基本表中,。 答案:主属性不能取空值
10、参照完整性是指在基本表中,。 答案:外码可以是空值或者另一个关系主码的有效值
11、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就。答案:拒绝此操作
三、应用题:
设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:
(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。
(2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。
(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。
(4)检索”李强”同学不学课程的课程号(C#)。
(5)检索至少选修两门课程的学生学号(S#)。
(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
(7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。
(8)检索选修课程号为k1和k5的学生学号(S#)。
(9)检索选修全部课程的学生姓名(SNAME)。
(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。
(11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。
解:本题各个查询语句对应的关系代数表达式表示如下:
(1). ∏C#,CNAME(σTEACHER=‘程军’(C))
(2). ∏S#,SNAME(σAGE>21∧SEX=”男”(C))
(3). ∏SNAME{swv [∏S#,C#(sc)÷∏C#(σTEACHER=‘程军’(C))]}
(4). ∏C#(C)- ∏C#(σSNAME=‘李强’(S)wv SC)
(5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC× SC))
(6). ∏C#,CNAME(Cwv (∏S#,C#(sc)÷∏S#(S)))
(7). ∏S#(SCwv∏C#(σTEACHER=‘程军’(C)))
(8). ∏S#,C#(sc)÷∏C#(σC#=’k1’∨ C#=’k5’(C))
(9). ∏SNAME{swv [∏S#,C#(sc)÷∏C#(C)]}
(10). ∏S#,C#(sc)÷∏C#(σS#=’2’(SC))
(11). ∏S#,SNAME{swv [∏S#(SCwvσCNAME=‘C语言’(C))]}
关系R和S如下图所示,试计算R÷S。
R
A
B
C
D
a
b
c
d
a
b
e
f
a
b
h
k
b
d
e
f
b
d
d
l
c
k
c
d
c
k
e
f
R÷S答案:
A
B
a
b
c
k
S
C
D
c
d
e
f
第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.SELECT SN,AGE,SEX FROM S
WHERE AGE>(SELECT AGE FROM S
WHERE SN=“王华”)
B.SELECT SN,AGE,SEX
FROM S
WHERE SN=“王华”
C.SELECT SN,AGE,SEX FROM S
WHERE AGE>(SELECT AGE
WHERE SN=“王华”)
D.SELECT SN,AGE,SEX FROM S
WHERE AGE>王华.AGE
答案:A
9、检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是。
A.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”)
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”) 答案:D
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
FROM SC
WHERE S.S#=SC.GRADE
C.SELECT S.SN,SC.C#,SC.GRADE
FROM S,SC
WHERE S.S#=SC.S#
D.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
B.SELECT S# FORM SC
WHERE C#=“C2” AND GRADE IN
(SELECT GRADE FORM SC WHERE C#=“C2”)
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”
答案:A
二、填空题
1、SQL是。 答案:结构化查询语言
2、视图是一个虚表,它是从①中导出的表。在数据库中,只存放视图的②,不存放视图的③。 答案:①一个或几个基本表 ②定义 ③视图对应的数据
3、设有如下关系表R:
R(No,NAME,SEX,AGE,CLASS)
主关键字是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。
写出实现下列功能的SQL语句。
①插入一个记录(25,“李明”,“男”,21,“95031”); 。
②插入“95031”班学号为30、姓名为“郑和”的学生记录; 。
③将学号为10的学生姓名改为“王华”; 。
④将所有“95101”班号改为“95091”; 。
⑤删除学号为20的学生记录; 。
⑥删除姓“王”的学生记录; 。
答案:
①INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”)
②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”)
③UPDATE R SET NAME=“王华”WHERE NO=10
④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101”
⑤DELETE FROM R WHERE NO=20
⑥DELETE FROMR WHERE NAME LIKE“王%”
第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 SNAME,AGE
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
(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
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
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、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的阶段。
A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 答案:B
2、在关系数据库设计中,设计关系模式是的任务。
A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 答案:C
3、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是。
A.建立库结构 B.扩充功能 C.加载数据 D.系统调试 答案:B
4、在数据库的概念设计中,最常用的数据模型是。
A.形象模型 B.物理模型 C.逻辑模型 D.实体联系模型 答案: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
7、概念模型独立于。
A.E-R模型 B.硬件设备和DBMS C.操作系统和DBMS D.DBMS 答案:B
8、数据流程图(DFD)是用于描述结构化方法中阶段的工具。
A.可行性分析 B.详细设计 C.需求分析 D.程序编码答案:C
9、下图所示的E-R图转换成关系模型,可以转换为关系模式。
A.1个 B.2个 C.3个 D.4个
答案:C
价格
借阅日期
借阅
借书人
图书
借书证号
姓名
单位
总编号
书名
分类号
作者
位置
m
n
二、填空题
1、数据库设计的几个步骤是。
答案:需求分析,概念设计,逻辑设计,物理设计,系统实施,系统运行和维护
2、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计阶段。
答案:物理
3、在数据库设计中,把数据需求写成文档,它是各类数据描述的集合,包括数据项、数据结构、数据流、数据存储和数据加工过程等的描述,通常称为。
答案:数据字典
4、在设计分E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计的,所以各个分E-R图之间难免有不一致的地方,这些冲突主要有①、②和③三类。
答案:①属性冲突②命名冲突③结构冲突
三、应用题
1. 设有如下实体:学生:学号、单位、姓名、性别、年龄、选修课程名 课程:编号、课程名、开课单位、任课教师号 教师:教师号、姓名、性别、职称、讲授课程编号 单位:单位名称、电话、教师号、教师名
上述实体中存在如下联系:
(1).一个学生可选修多门课程,一门课程可为多个学生选修;(2).一个教师可讲授多门课程,一门课程可为多个教师讲授;(3).一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下工作:(1).分别设计学生选课和教师任课两个局部信息的结构E-R图。(2).将上述设计完成的E-R图合并成一个全局E-R图。(3).将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。
解:(1).学生选课、教师任课局部E-R图如下所示。
开课
单位
课程
选修
学生
拥有
姓名
性别
学号
课程名
教师号
编号
单位名
年龄
1
1
m
m
n
m
学生选课局部E-R图
课程
讲授
编号
姓名
性别
教师号
年龄
m
n
教师
m
属于
1
单位
教师授课局部E-R图
电话
单位名
(2).合并后的全局E-R图如下所示。
属于
单位
课程
选修
学生
拥有
教师
开课
讲授
1
1
1
m
m
m
n
n
m
m
全局E-R图
为避免图形复杂,下面给出各实体属性:
单位:单位名、电话
学生:学号、姓名、性别、年龄
教师:教师号、姓
展开阅读全文