文档库 最新最全的文档下载
当前位置:文档库 › 第4章 关系数据库的结构化查询语言习题解答

第4章 关系数据库的结构化查询语言习题解答

第4章 关系数据库的结构化查询语言习题解答
第4章 关系数据库的结构化查询语言习题解答

第4章关系数据库的结构化查询语言

习题解答

一. 简答题

1.SQL的特点是什么?

(1)一体化特点。SQL提供了一系列完整的数据定义和操纵功能,用SQL可以实现数据库生命周期中的全部活动,包括定义关系模式,录入数据以建立数据库、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作要求。

(2)高度非过程化。SQL和其它数据操作语言不同的关键是SQL为非过程语言,它允许用户依据做什么来说明操作,而不用说明怎样做,存取路径的选择和SQL语句操作的过程由系统自动完成。

(3)语言简洁,易学易用。SQL的语法很简单,语言十分简洁,完成核心功能只用了9个动词。初学者经过短期的学习就可以使用SQL进行数据库的存取等操作,易学易用是它的最大特点。

(4)统一的语法结构对待不同的工作方式。无论是联机交互使用方式,还是嵌入到高级语言中使用,其语法结构是基本一致的,这就大大改善了最终用户和程序设计人员之间的通信。

(5)面向集合的操作方式。SQL采用集合操作方式,无论是操作对象还是查询更新的结果均是元组的集合。

(6) SQL语言可以对两种基本数据结构进行操作,一种是“表”,另一种是“视图(View)”。

2.什么是基本表? 什么是视图? 两者的区别和联系是什么?

基本表是本身独立存在的表,一个(或多个)基本表对应一个存储文件,一个表可以带若干索引,索引也存放在存储文件中。存储文件的逻辑结构组成了关系数据库的内模式。

视图是从一个或几个基本表导出的表,它本身不独立存储在数据库中,即数据库中只存储视图的定义而不存储对应的数据,因此视图是一个虚表。用户可在视图和/或基本表上定义新的视图。

基本表是实表,而视图则是虚表。用户可以用SQL语言对视图(View)和基本表(Base table)进行查询等操作,在用户观点里,视图和基本表一样都是关系。

3.视图是否都可以更新?试举例说明。

在一般情况下,只有行列子集视图才能更新,而由以下例子建立的视图不仅用到分组,而且还有avg函数,所以不能更新。

已知关系模式:学生(学号,姓名,年级,专业)、选课(学号,课号,成绩),将学生的学号、姓名及他的平均成绩定义为如下一个视图:

Create view PJCJ(学号,姓名,平均成绩)

As Select 学号,姓名,avg(成绩)

From 学生,选课

Where 学生.学号=选课.学号

Group by 学生.学号,姓名;

4.建索引的目的是什么? 是否索引建得越多越好?

建立索引的目的是为了加快检索速度,但并不意味着表的索引建得越多越好,因为维护索引结构也需要花费系统的一定开销,尤其是对那些经常有更新操作的表,其索引结构维护的代价是很大的。通常是根据需要建立索引,如果需要经常使用某列数据进行查询,则使用该列建立索引效果会很好。另外,一般数据库管理系统中,所有的索引都是自动维护的,无须用户介入;如果建太多的索引,则会增加维护索引的代价,影响系统性能。

二.问答题

1.设两个关系模型为: S(sno,name, sex,age)、SC(sno,cno,grade),请用 SQL语言实现下列操作(假设每门课都有人选):

(l) 求“01”号课成绩大于80分的所有男生的姓名;

Select name

From S,SC

Where S.sno=SC.sno and cno=’01’ and grade>80 and sex=’男’;

(2) 求至少选修“01”和“03”两门课的学生信息;

Select S.* from S

Where sno in

( select sno from SC

Where cno=’01’ and sno in

( select sno from SC

Where cno=’03’));

(3) 建立一个新关系模型 TSCC(sno, name, avggrade),并将学生的平均成绩存入该关系中;

Select sno,name,avg(grade) as avggrade

Into TSCC

From S,SC

Where S.sno=SC.sno

Group by S.sno,name

(4) 求学习全部课程的所有学生姓名。

Select sno,name

From S,SC

Where S.sno=SC.sno

Group by S.sno,name having count(*)=( select count(distinct cno)

From SC);

(5) 求各课不及格学生的课号、姓名及成绩。

Select cno,name,grade

From S,SC

Where S.sno=SC.sno and grade<60;

2.已知四个关系模式:学生(学号,姓名,年级,专业)、选课(学号,课号,成绩)、课程(课号,课名,学时数)、必修课(课号,必修专业),请用SQL语言完成下列操作:

(1) 列出选修“数据库原理”的学生名单;

Select姓名From学生,选课,课程

Where 学生.学号=选课.学号 and 选课.课号=课程.课号

and 课名=’数据库原理’;

(2) 将学生的学号、姓名及他的平均成绩定义为一个视图;

Create view PJCJ(学号,姓名,平均成绩)

As Select 学号,姓名,avg(成绩)

From 学生,选课

Where 学生.学号=选课.学号

Group by 学生.学号,姓名;

(3) 由(2)建立的视图是否可更新?请说明理由。

由(2)建立的视图不可更新。因为在一般情况下,只有行列子集视图才能更新,而由(2)建立的视图不仅用到分组,而且还有avg函数,所以不能更新。

3.今有两个关系模式:学生(学号,姓名,性别,出生日期)、选修课程(学号,课号,成绩),请用 SQL中的 GRANT和 REVOKE语句,完成以下授权定义或存取控制功能:

(1)用户王明对两个表有 SELECT权力;

Grant SELECT on学生,选修课程 to 王明;

(2)用户刘刚对两个表有 INSERT和 DELETE权力;

Grant INSERT,DELETE on学生,选修课程 to 刘刚;

(3)用户金星对选修课表有 SELECT权力,对学生表有更新姓名字段的权力;

Grant SELECT on 选修课程,UPDATE on 学生(姓名) to 金星;

(4)用户周平具有对两个表的所有权力,并具有给其他用户授权的权力;

Grant ALL on 学生,选修课程 to 周平 with grant option;

(5)对于上述每种授权情况,撤销为用户所授予的权力。

Revoke SELECT on学生,选修课程 from 王明;

Revoke INSERT,DELETE on学生,选修课程 from 刘刚;

Revoke SELECT on选修课程,UPDATE on 学生(姓名) from 金星;

Revoke ALL on 学生,选修课程 from 周平;

4. 以ss(sno,sname,sage,sdept),sc(sno,cno,grade)和cc(cno,cname,chour)为例,建立以下触发器:

(1) 维护引用(参照)完整性;

例如,学生转专业时需要修改学号(sno)和课号(cno),我们可以创建以下而二个触发器。 Create trigger SS_update

On ss

For update

As

If update(sno)

If ( select count(*) from deleted, ss where deleted.sno=ss.sno)>0

Update sc

Set sc.sno = inserted.sno

From sc, deleted

Where sc.sno=deleted.sno

同理可得

Create trigger CC_update

On cc

For update

As

If update(cno)

If ( select count(*) from deleted, cc where https://www.wendangku.net/doc/b91386132.html,o=https://www.wendangku.net/doc/b91386132.html,o)>0

Update sc

Set sc.sno = inserted.sno

From cc, deleted

Where cc.sno=deleted.sno

(2) 级联删除;

例如,学生转学时需要在删除学生记录的同时也删除相应的选课记录,下面是创建的触发器。

Create trigger SS_delete

On ss

For delete

As

Delete from sc

From sc,deleted

Where sc.sno=deleted.sno

(3) 更新grade时保证0≤grade≤100。

Create trigger Grade_update

On sc

For update

As

If update(grade)

If ( select count(*) from deleted, inserted

where deleted.sno=inserted.sno and https://www.wendangku.net/doc/b91386132.html,o=https://www.wendangku.net/doc/b91386132.html,o

and (inserted.grade<0 or inserted.grade>100))>0 begin

print ‘成绩更新超范围!’

rollback transaction

end

[补充题] 设有三个关系:S(S#,SNAME,AGE,SEX),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER),试用SQL语言完成下列查询语句:

(1)检索LIU老师所授课程的课程号、课程名。

Select C#,CNAME

From C

Where TEACHER=’LIU%’;

(2)检索年龄大于23岁的男学生的学号与姓名。

Select S#,SNAME

From S

Where AGE>23 and SEX=’男’;

(3)检索学号为’S1’学生所学课程的课程名与任课教师名。

Select CNAME,TEACHER

From SC,C

Where SC.C#=C.C# and S# =’S1’;

(4)检索至少选修LIU老师所授课程中一门课的女学生姓名。

Select SNAME

From S,SC,C

Where S.S#=SC.S# and SC.C#=C.C# and TEACHER=’LIU%’and SEX=’女’;

(5)检索WANG同学不学的课程的课程号。

(Select C#

from C

where C# not in

(select C#

From S,SC

Where S.S#=SC.S# and SNAME=’WANG%’);

(6)检索至少选修两门课程的学生学号。

Select S#

From SC

Group by S# having count(*)>=2;

*(7)检索全部学生都选修的课程的课程号与课程名。

[解法1] select SC.C#,CNAME

From S,SC,C

Where S.S#=SC.S# and SC.C#=C.C#

Group by SC.C#,CNAME having count(*)=

(select count(*) from S);

[解法2] 用p表示谓词:学生y选修了课程x,上述题意可形式化表示如下。

?

y?

?

p

?

(

))

y

(

(p

)

意即:没有一个学生y是不选修课程x。

Select C#, CNAME

From C

Where not exists

( select *

From S

Where not exists

( select *

From SC

Where S#=S.S# and C#=C.C# ));

*(8)检索选修课程包含LIU老师所授课程的学生学号。

查询学号为x的学生,对任一课程y,只要老师’LIU’讲授了课程y,则学生x也选修了课程y。

假设:若用p表示谓词“老师’LIU’讲授了课程y”,用q表示谓词“学生x选修了课程y”,则上述题意可形式化表示如下:

?

?

?

q

p

y?

?

?

?

?

?

?

y

?

p

(

)))

(

(

)))

))

(

(

(

(

p

y

q

q

y

)

(q

p

(

意即:不存在这样的课程y,老师’LIU’讲授了课程y,而学生x没有选修课程y。

Select S#

From SC SCX

Where not exists

( select *

From C CY

Where TEACHER=’LIU’and not exists

( select *

From SC SCZ

Where CY.C#=SCZ.C# and SCZ.S#=SCX.S# ));

(完整版)数据库关系代数习题

1.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句: S C SC S# SNAME AGE SEX 1 李强23 男 2 刘丽22 女5 张友22 男C# CNAME TEACHER k1 C语言王华 k5 数据库原理程军 k8 编译原理程军 S# C# GRADE 1 k1 83 2 k1 85 5 k1 92 2 k5 90 5 k5 84 5 k8 80 (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)。(12)检索没有一门课程成绩不及格的学生学号,姓名。 答:本题各个查询语句对应的关系代数表达式表示如下: (1) ΠC#,CNAME(σTEACHER ='程军'(C)) (2) ΠS#,SNAME(σAGE>21^SEX ='男'(S)) (3) ΠSNAME(S(ΠS#,C#(SC)÷ΠC#(σTEACHER ='程军'(C)))) (4) ΠC#(C)-ΠC#(σSNAME ='李强'(S)∞SC) (5) ΠS# (σ1=4^2≠5 (S C×SC)) (6) ΠC#,CNAME(C∞(ΠS#,C#(SC)÷ΠS#(S))) (7) ΠS# (SC∞ΠC# (σTEACHER ='程军'(C))) (8) ΠS#,C#(SC)÷ΠC#(σC#=’K1’VC#=’K5’ (C)) (9) ΠSNAME(S∞(ΠS#,C#(SC)÷ΠC#(C))) (10) ΠS#,C#(SC)÷ΠC#(σC#=’2’ (S C)) (11) ΠS#,SNAME(S∞ΠS#(SC∞(σCNAME ='C语言'(C)))) (12)П学号,姓名(学生)-П学号,姓名(σ分数<60(学生∞学习))。

数据库系统原理课后答案 第九章

9.1 名词解释 (1)OODBS:是指面向对象数据库系统,它既具数据库管理的基本功能,又能支持面向对象的数据模型。 (2)ORDBS:基于对象关系数据模型的DBS称为对象关系数据库系统(ORDBS)。 (3)平面关系模型:传统的关系模型称为“平面关系模型”,它要求关系模式具有第一范式(1NF)性质,关系具有规范化的结构。也就是规定属性值是不可分解的,即不允许属性值具有复合结构(元组或关系)。 (4)嵌套关系模型:是从平面关系模型发展而成的。它允许关系的属性值又可以是一个关系,而且可以出现多次嵌套。嵌套关系突破了1NF的定义框架,是“非1NF关系”。 (5)复合对象模型:在嵌套关系模型上进一步放宽要求。在关系定义上,集合与元组不再有交替出现的严格限制,此时的关系中,属性类型可以是基本数据类型、结构类型(元组类型)或集体类型(即关系类型)。 (6)数据的泛化/细化:是对概念之间联系进行抽象的一种方法。当在较低层上的抽象表达了 与之联系的较高层上抽象的特殊情况时,就称较高层上抽象是较低层上抽象的"泛化",而较低层上抽象是较高层上抽象的"细化"。 (7)对象关系模型:在传统关系数据基础上,提供元组、数组、集合等更为丰富的数据类型及处理新数据类型操作的能力而形成的数据模型。(注:传统关系模型只支持字符、数值、字串,布尔值等等基本数据类型及其处理功能) (8)类型级继承性:当继承性发生在类型级时,子类型继承了超类型的属性。也就是说,超类型所具有的属性,在子类上也具有。 (9)表级继承性:继承性也可发生在表级,(就是元组集合上发生继承),子表继承超表全部属性,超表中每个元组最多可以与子表中一个元组对应,而子表中的每个元组在超表中恰有一个元组对应,并在继承的属性值上具有相同的值。 (10)引用类型:数据类型可以嵌套定义,在嵌套引用时,不是引用对象本身,而是个用对象标识符(即指针),这种指针被称为引用类型。 (11)对象:客观世界中的实体经过抽象称为问题空间中的对象,它是对一组信息及其操作的描述。 (12)类:是具有相同的变量名和类型、相同的消息和使用方法的对象的集合。 (13)单重继承性:一个子类继承某一个超类的结构和特性,称为单重继承性。 (14)多重继承性:一个子类继承多个超类的结构和特性,称为多重继承性。 (15)对象标识:在面向对象语言中,对象标识是一个指针一级的概念,在对象创建的瞬间,由系统赋给每个对象一个“标识”,即系统内的一个唯一的指针,在对象生存期内,这个标识不可改变。 (16)对象包含:不同类的对象之间存在的包含关系称为对象包含。包含是一种“一部分”(is part of)的联系。 (17)类继承层次图:表示类继承关系的图,由超类名、子类名和一组线条自上而下有序的表示。(18)类包含层次图:表示对象包含关系的图,由一些具有包含关系的对象和线条自上而下表示(下方的对象为其连线所指上方对象的一部分)。 (19)持久数据:是指创建这些数据的程序运行终止后数据依然存在于系统之中。数据库中的关系就是持久数据。 (20)持久对象:程序运行结束后,被保留下来的对象称为持久对象。 (21)持久指针:持久指针可看作是数据库中指向对象的指针。持久化指针不像内存中的指针,它在程序执行后及数据重组后仍保持有效。 (22)持久化C++系统: 基于C++的持久化扩充的OODBS。

数据库复习题5,6,7,8章

第5章数据库完整性 一、选择题: 1、在数据库系统中,保证数据及语义正确和有效的功能是( D )A.并发控制 B.存取控制 C.安全控制 D.完整性控制 2、关于主键约束以下说法错误的是( C ) A. 一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束 C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 3、在表或视图上执行除了(D )以外的语句都可以激活触发器。 B. Delete C. Update 4、数据库的__B_ _是指数据的正确性和相容性。 A.安全性 B.完整性 C.并发控制 D.恢复 5、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的_____C___约束。 A、实体完整性 B、参照完整性 C、用户自定义 D、用户操作 二、填空题 1.数据库的完整性是指数据的①实体完整性 . ②参照完整性__和③用户定义完整性。 2、实体完整性是指在基本表中,。答案:主属性不能取空值 3、参照完整性是指在基本表中,。答案:外码可以是空值或者另一个关系主码的有效值 4、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS 就。答案:拒绝此操作

第6章关系数据理论 一、选择题 1、关系规范化中的删除操作异常是指①A ,插入操作异常是指② D 。A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删 除 D.应该插入的数据未被插入 2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是 A 。 A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑 3、规范化过程主要为克服数据库逻辑结构中的插入异常,删除;异常以及 C 的 缺陷。 A.数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失 4、当关系模式R(A,B)已属于3NF,下列说法中 B 是正确的。 A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常 C.一定 属于BCNF D.A和C都是 5、关系模型中的关系模式至少是 A A.1NF B.2NF C.3NF D.BCNF 6、在关系DB中,任何二元关系模式的最高范式必定是 D A.1NF B.2NF C.3NF D.BCNF 7、候选关键字中的属性称为 B 。 A.非主属性 B.主属性 C.复合属性D.关键属性 8、消除了部分函数依赖的1NF的关系模式,必定是 B 。A.1NF B.2NF C.3NF D.4NF 9、关系模式的候选关键字可以有 C ,主关键字有 B 。 A.0个 B.1个 C.1个或多个 D.多个 10、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门” 关系中,因哪个属性而使它不满足第一范式? B 。部门(部门号,部门名, 部门成员,部门总经理) A.部门总经理 B.部门成员 C.部门名 D.部门号 二、填空题 1、在关系A(S,SN,D)和B(D,CN,NM)中,A的主键是S,B的主键是D,则D在S中称 为外键。 2、对于非规范化的模式,经过①转变为1NF,将1NF经过②转变为 2NF,将2NF经过③转变为3NF。 答案:①使属性域变为简单域②消除非主属性对主关键字的部分依赖③消除非主 属性对主关键字的传递依赖 3、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有 的依赖关系和。答案:无损连接性 三、综合练习 1、已知学生关系模式 S(Sno,Sname,SD,Sdname,Course,Grade) 其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。

(完整版)大学数据库考试复习试题带答案

2019数据库期末复习内容 1.选择题 (1)(数据库)是存储在计算机内结构化的数据的集合 (2)下述关于数据系统正确的描述是(数据库系统减少了数据冗余)。 (3)数据库(DB)、与数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(DBS 包含DB 和DBMS )。(4)数据库管理系统的工作不包括(为定义的确据库提供操作系统)。 (5)用于对现实世界进行描述的工具是(数据模型)。 (6)在数据库的三级模式结构中,描述数据库中全局逻辑结构和特征的是(模式)。 (7)E-R图用来建立数据库的(概念模型)。 (8)下列模型中不能直接描述实体间多对多的联系的是(关系模型)。 (9)数据模型的三个要素是(数据结构、数据操作、完整性约束) (10)数据库的设计人员和用户之间沟通信息的桥梁是(实体联系图)。 (11)数据的独立性分为(逻辑独立性和物理独立性)。 (12)数据库通常是根据(数据模型)来分类的。 (13)关系数据库系统能实现专门的关系运算,包括(选择、投影、连接、除)。 (14)在关系模型中,下述关于关键字的说法正确的是(可以由一个或多个其值能唯一标识该关系模式中任何元组的属性组成)。 (15)被称为关系的两个不变性,由关系数据库系统自动支持的是(实体完整性和参照完整性)。 (16)在关系中不能出现相同元组的约束是通过(主码)来实现。 (17)下列数据模型中,数据独立性最高的是(关系模型). (18)规范化理论是关系数据库进行逻辑设计的理论依据。根据这个理论,关系数据库中的关系必须满足:每一属性都是(不可分解的)。 (19)关系数据库规范化是为解决关系数据库中(插入异常、删除异常和数据冗余)问题而引入的。 (20)在关系数据库中,任何二元关系模式的最高范式必定是(BCNF ) (21)若属性X函数依赖于属性Y时,则属性X与属性Y之间的关系是(多对一)。 (22)设有关系模式:部门(部门代码,部门名称,部门成员,部门经理)由于其中(部门成员)属性存在,使该关系不属于第一范式。 (23)若关系模式R中的属性都是主属性,则R最高属于(3NF )。 (24)若要彻底消除插入异常和删除异常,关系模式最低要属于(BCNF)。 (25)关系模式分解的无损连接和保持函数依赖两个特性之间的联系是(没有必然联系)。 (26)关系模式中数据依赖的存在,可能会导致成立蕴涵后者数据插入异常,这是指(该插入的数据未被插入)。(27)设要对关系模式R(学号,姓名,课程代码,课程名,课程成绩)进行分解,将其规范化到3NF,下列(B)是正确的规范化结果。B.R1(学号,姓名)R2(课程代码,课程名)R3 (学号,课程代码,课程成绩) (28)有如下关系R(是BCNF)。 (29)对用户访问数据库的权限加以限定是为了保护数据库的(安全性)。 (30)下面(可移植性)不是数据库系统必须提供的数据控制功能。 (31)数据库系统中,对存取权限定义为(授权)。 (32)在数据库的安全性控制中,为了保证用户只能存取他有权存取的数据,在授权的定义中,数据对象的(范围越小),授权子系统就越灵活。 (33)数据库安全性遭到破坏的情况属于(非法用户读取数据库中的数据)。 (34)数据库的(完整性)是指数据的正确性和相容性。 (35)数据完整性保护中的约束条件是指(值的约束和结构的约束)。 (36)实体完整性和参照完整性属于(静态关系约束)。 (37)数据类型、取值范围、空值约束属于(静态列级约束)。

关系数据库设计理论练习题答案

第四章关系数据库设计理论练习题 一、选择题 1、关系规范化中的删除操作异常是指①A,插入操作异常是指②D A、不该删除的数据被删除. B、不该插入的数据被插入; C、应该删除的数据未被删除; D、应该插入的数据未被插入. 2、关系数据库规范化是为解决关系数据库中()问题而引入的。 A、插入异常、删除异常和数据冗余; B、提高查询速度; C、减少数据操作的复杂性; D、保证数据的安全性和完整性。 3、假设关系模式R(A,B)属于3NF,下列说法中()是正确的。 A、R一定消除了插入和删除异常; B、R仍可能存在一定的插入和删除异常; C、R一定属于BCNF; D、A和C都是. 4、关系模式的分解 A、唯一 B、不唯一. 5、设有关系W(工号,姓名,工种,定额),将其规范化到第三范式正确的答案是() A、W1(工号,姓名),W2(工种,定额); B、W1(工号,工种,定额),W2(工号,姓名); C、W1(工号,姓名,工种),W2(工种,定额); D、以上都不对. 6、设学生关系模式为:学生(学号,姓名,年龄,性别,平均成绩,专业),则该关系模式的主键是() A、姓名; B、学号,姓名; C、学号; D、学号,姓名,年龄. 7根据数据库规范化理论,下面命题中正确的是() A、若R∈2NF,则R∈3NF B、若R∈1NF,则R不属于BCNF C、若R∈3NF,则R∈BCNF D、若R∈BCNF,则R∈3NF 8、关系数据库设计理论中,起核心作用的是 A、范式; B、模式设计; C、函数依赖; D、数据完整性. 9、设计性能较优的关系模设称为规范化,规范化的主要理论依据是() A、关系规范化理论; B、关系运算理论;

数据库题作业

数据库原理及应用作业 班级:学号:姓名: 第一章 一、单项选择题 1. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是()阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理 2. 数据库系统与文件系统的主要区别是()。 A. 数据库系统复杂,而文件系统简单 B. 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C. 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D. 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 3. 在数据库中存储的是()。 A. 数据 B. 数据模型 C. 数据及数据之间的联系 D. 信息 4. 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指()。 A. 同一个应用中的多个程序共享一个数据集合 B. 多个用户、同一种语言共享数据 C. 多个用户共享一个数据文件 D. 多种应用、多种语言、多个用户相互覆盖地使用数据集合 5. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是()。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 6. 数据库管理系统(DBMS)是()。 A. 一个完整的数据库应用系统 B. 一组硬件 C. 一组系统软件 D. 既有硬件,也有软件 7. 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的()。 A. 文件的集合 B. 数据的集合 C. 命令的集合 D. 程序的集合 8. 支持数据库各种操作的软件系统是()。 A. 命令系统 B. 数据库管理系统 C. 数据库系统 D. 操作系统 9. 由计算机硬件、DBMS、数据库、应用程序及用户等组成的一个整体叫()。 A. 文件系统 B. 数据库系统 C. 软件系统 D. 数据库管理系统 10. 数据库系统中应用程序与数据库的接口是()。 A. 数据库集合 B. 数据库管理系统DBMS C. 操作系统OS D. 计算机中的存储介质 11. 在DBS中,DBMS和OS之间关系是()。 A. 并发运行 B. 相互调用 C. OS调用DBMS D. DBMS调用OS 12. 在数据库方式下,信息处理中占据中心位置的是()。

数据库规范化理论习题

规范化理论习题1. 解释下列名词: 函数依赖、部分函数依赖、完全函数依赖、传递函数依赖、候选关键字、主关键字、全关键字、1NF、2NF、3NF、BCNF、多值依赖、4NF、连接依赖、5NF、最小函数依赖集、无损分解 函数依赖:FD(function dependency),设有关系模式R(U),X,Y是U的子集, r是R的任一具体关系,如果对r的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y], 则称X函数决定Y,或Y函数依赖于X,记为X→Y。X→Y为模式R的一个函数依赖。 部分函数依赖:即局部依赖,对于一个函数依赖W→A,如果存在X W(X包含于W)有X→A成立,那么称W→A是局部依赖,否则称W→A为完全依赖。 完全函数依赖:见上。 传递函数依赖:在关系模式中,如果Y→X,X→A,且X Y(X不决定Y), A X(A不属于X),那么称Y→A是传递依赖。 候 选关键字:设K 为关主关键字:若关系模式R有多个候选码,则选定其中一个作为主关键字 (Primary Key),有时也称作为主码。 全关键字:若关系模式R整个属性组都是码,称为全关键字(All Key)或全码。 1NF:第一范式。如果关系模式R的所有属性的值域中每一个值都是不可再分解的值, 则称R是属于第一范式模式。如果某个数据库模式都是第一范式的,则称该数据库存模式属于第一范式的数据库模式。第一范式的模式要求属性值不可

再分裂成更小部分,即属性项不能是属性组合和组属性组成。 2NF:第二范式。如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称是第二范式模式;如果某个数据库模式中每个关系模式都是第二范式的,则称该数据库模式属于第二范式的数据库模式。 (注:如果A是关系模式R的候选键的一个属性,则称A是R的主属性,否则称A是R 的非主属性。) 。 3NF:第三范式。如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三范式的模式。如果某个数据库模式中的每个关系模式都是第三范式,则称为3NF的数据库模式。 BCNF:BC范式。如果关系模式R是第一范式,且每个属性都不传递依赖于R 的候选键,那么称R是BCNF的模式。 多值依赖:设R(U)是属性集U上的一个关系模式,X,Y,Z是U的子集,并且Z=U-X-Y, 用x,y,z分别代表属性集X,Y,Z的值,只要r是R的关系,r中存在元组(x,y1,z1)和(x,y2,z2)时,就也存在元组(x,y1,z2)和(x,y2,z1),那么称多值依赖(MultiValued Dependency MVD) X→→Y在关系模式R中成立。 4NF:第四范式。设R是一个关系模式,D是R上的多值依赖集合。如果D中成立非平凡多值依赖X→→Y时, X必是R的超键,那么称R是第四范式的模式。 连接依赖:关系模式R(U)中,U是全体属性集,X,Y,…,Z是U的子集,当且仅当R是由其在X,Y,…,Z上投影的自然连接组成时,称R满足对X,Y,…,Z的连接依赖。记为JD(X,Y,…,Z)。 5NF:关于模式R中,当且仅当R中每个连接依赖均为R的候选码所蕴涵时,称R属于5NF。

数据库原理例题及解答

一、实验目的: 1、了解SQL语言的特点和基本概念。 2、能够针对某种具体的DBMS(本实验采用Access2003),熟练地运用单表查询、连接查询、嵌套查询、集合 查询等各种SQL查询语句对数据库中的表进行操作。 3、对相同的查询要求,能够采用多种查询方法实现,并能分析各种方法的优劣,从中选择合适的方法。 二、实验过程: 1、Print the names of professors who work in departments that have fewer than 50 PhD students. 解:(1)分析:本题是查询在博士生人数少于50个人的系工作的教师名字。查询教授名字可以通过prof 表,而所查询的教授名字是有限制条件的, 他所工作的系名要属于特定的集合(所有系名的一个子集),显然这个子集可以通过查询 dept表获得,所以带有谓词in的嵌套子查询可以实现题目要求。 (2)语句实现: ' SELECT Prof.字段1 FROM Prof WHERE Prof.字段2 IN (SELECT Dept.字段1 FROM Dept WHERE Dept.字段2 < 50); ****************************************************; (3)查询结果: | 2、Print the name(s) of student(s) with the lowest gpa 解:(1)分析:本题是查询成绩点最低的学生的名字。最低的成绩点可以在student表中通过函数min(gpa)获得,而所查询学生的名字的限制为成绩点等于min(gpa), 因此可用如下嵌套子查询实现。 (2)语句实现: > SELECT Student.字段2

数据库系统原理(2018年版)课后习题参考答案解析

答案仅供参考 第一章数据库系统概述 选择题 B、B、A 简答题 1.请简述数据,数据库,数据库管理系统,数据库系统的概念。 P27 数据是描述事物的记录符号,是指用物理符号记录下来的,可以鉴别的信息。 数据库即存储数据的仓库,严格意义上是指长期存储在计算机中的有组织的、可共享的数据集合。 数据库管理系统是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。数据库系统是指在计算机中引入数据库技术之后的系统,包括数据库、数据库管理系统及相关实用工具、应用程序、数据库管理员和用户。 2.请简述早数据库管理技术中,与人工管理、文件系统相比,数据库系统的优点。 数据共享性高 数据冗余小 易于保证数据一致性 数据独立性高 可以实施统一管理与控制 减少了应用程序开发与维护的工作量 3.请简述数据库系统的三级模式和两层映像的含义。 P31 答: 数据库的三级模式是指数据库系统是由模式、外模式和内模式三级工程的,对应了数据的三级抽象。 两层映像是指三级模式之间的映像关系,即外模式/模式映像和模式/内模式映像。 4.请简述关系模型与网状模型、层次模型的区别。 P35 使用二维表结构表示实体及实体间的联系 建立在严格的数学概念的基础上 概念单一,统一用关系表示实体和实体之间的联系,数据结构简单清晰,用户易懂易用 存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。

第二章关系数据库 选择题 C、C、D 简答题 1.请简述关系数据库的基本特征。P48 答:关系数据库的基本特征是使用关系数据模型组织数据。 2.请简述什么是参照完整性约束。 P55 答:参照完整性约束是指:若属性或属性组F是基本关系R的外码,与基本关系S的主码K 相对应,则对于R中每个元组在F上的取值只允许有两种可能,要么是空值,要么与S中某个元组的主码值对应。 3.请简述关系规范化过程。 答:对于存在数据冗余、插入异常、删除异常问题的关系模式,应采取将一个关系模式分解为多个关系模式的方法进行处理。一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式,这就是所谓的规范化过程。 第三章数据库设计 选择题 B、C、C 简答题 1. 请简述数据库设计的基本步骤。 P66 需求分析设计;概念结构设计;逻辑结构设计;物理结构设计;数据库设计;数据库的运行和维护。 2. 请分别举例说明实体之间联系的三种表现情形。 P74 一对一联系:对于实体集A中的每个实体,实体集B中最多只有一个实体与之联系,反之亦然。举例:班级与班长,每个班只有一个班长,每个班长也只在一个班内任职。 一对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中最多只有一个实体与之联系。举例:班级与班级成员,每个班级对应多个班级成员,每个班级成员只对应一个班级。 多对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中有M个实体与之联系。举例:授课班级与任课教师,每个

数据库习题答案

1.3 习题 1. 数据库的发展历史分为哪几个阶段?各有什么特点? 答:从数据管理的角度看,数据库技术到目前共经历了人工管理阶段、文件系统阶段和数据库系统阶段。 人工管理阶段数据管理特点:数据不保存,没有对数据进行管理的软件系统,没有文件的概念,数据不具有独立性。 文件系统阶段数据管理特点:数据可以长期保存,由文件系统管理数据,文件的形式已经多样化,数据具有一定的独立性。 数据库系统阶段数据管理特点:采用复杂的结构化的数据模型,较高的数据独立性,最低的冗余度,数据控制功能。 2. 简述数据、数据库、数据库管理系统、数据库系统的概念。 答:数据是指描述事物的符号记录。人们通过数据来认识世界,交流信息。 数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。 数据库管理系统(DataBase Management System,简称DBMS)是专门用于管理数据库的计算机系统软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能,它位于用户和操作系统之间,是一层数据管理软件。 数据库系统(DataBase System,简称DBS)是指在计算机系统中引入了数据库后的系统,由计算机硬件、数据库、数据库管理系统、应用程序和用户构成,即由计算机硬件、软件和使用人员构成。 3. 使用数据库系统有什么好处? 答:简化管理,提高效率,提供安全。 4. 试述数据库系统的三级模式结构和二级映象的特点。 答:从数据库管理系统的角度看,数据库系统通常采用三级模式结构:外模式、模式和内模式。数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS 管理,使用户能逻辑地、抽象地处理数据。 为了实现这三个层次上的联系和转换,数据库系统在这三级模式中提供了两层映象:外模式/模式的映象和模式/内模式的映象。 5. 什么是数据与程序的逻辑独立性?什么是数据与程序的物理独立性? 答:对于每一个外模式,数据库都有一个外模式/模式的映象,它定义并保证了外模式与数据模式之间的对应关系。当模式改变时,外模式/模式的映象要作相应的改变以保证外模式保持不变。应用程序是根据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,即数据的逻辑独立性。 数据库的内模式依赖于它的全局逻辑结构,即模式。它定义并保证了数据的逻辑模式与内模式之间的对应关系。当数据库的存储结构改变了,模式/内模式的映象也必须作相应的修

浅谈对的理解对象—关系型数据库

浅谈对对象—关系型数据库的理解 姓名:杨小敏 学号:2010206190026

针对对象—关系型数据库的理解我想结合自己的专业(地图学与地理信息系统)从下面三个方面来理解:(1)关系型数据的发展以及在空间数据管理方面的优缺点(2)面向对象数据库的发展及在空间数据管理方面的优缺点(3)关系型数据库和面向对象技术的融合在数据库发展中所起到的独特作用在我们GIS专业领域内,随着信息技术的发展,各种应用系统建设的不断深入,像现在面向21世纪的应急应用系统的建设、城市基础地理空间信息数据库系统与共享平台的建设、地理信息公共服务平台的建设,小到“数字城市”的建设,大到“数字地球”乃至“智慧地球”的建设,我们已经开始不满足数值和文字的信息处理,为了达到系统建设平台尤其是公共服务平台的建设起到良好的客户友好体验,大量的图形信息,音频信息已经深入到数据库的设计中,其中尤其是空间数据库管理备受瞩目。所以,面对信息爆炸的21世纪,海量数据的存储和管路已经不是传统的数据库能解决的,空间数据管理需要更强的数据库——对象关系型数据库。 为什么空间数据需要对象关系型数据库的管理才更有效?我想简单的说一下GIS空间数据的基本特征:(1)空间特征:每个空间对象都具有空间坐标,所以在存储空间数据的同时我们要考虑数据的空间分布特征;(2)非结构化特征:通用数据库或者是传统数据库数据记录一般是结构化的,在面对空间图形信息的时候难以直接采用关系数据管理系统;(3)空间关系特征:空间数据的空间关系最重要的就是空间拓扑关系,这种拓扑结构方便了空间数据的查询和空间分析,但是给空间数据的一致性和完整性的维护增加了复杂性;(4)海量数据的特征:数据库在面对海量数据的存储和组织时,一般在二维空间上划分块或图幅,在垂直的方向上划分层在组织海量空间数据。 在空间数据的管理技术的发展中,从手工管理管理阶段到文件管理阶段再到数据库管理阶段,在三个数据管理阶段,对数据管理方式也不尽相同,在这里,我想说的是空间数据库的发展历史对空间数据管理的影响,第一是层次关系型数据库:只是数据库发展的初级阶段,这是空间数据的管理大多用文件方式管理,很显然不适合管理海量的空间数据,所以淘汰;第二是网络关系型数据库:在一定程度上解决了空间数据复杂管理的难题,但还是被日益崛起的关系型数据库所淘汰;第三是关系型数据库的发展:为了解决难于保证数据的完整性,开始将空

关系数据库规范化理论常见试题及答案

关系数据库规范化理论常见试题及答案 1.关系规范化中的操作异常有哪些?它是由什么引起的?解决的办法是什么? 答:关系规范化中的操作异常有插入异常、更新异常和删除异常,这些异常是由于关系中存在不好的函数依赖关系引起的。消除不良函数依赖的办法是进行模式分解,即将一个关系模式分解为多个关系模式。 2.第一范式、第二范式和第三范式的关系的定义是什么? 答:不包含非原子项属性的关系就是第一范式的关系;对于第一范式的关系,如果此关系中的每个非主属性都完全函数依赖于主键,则此关系属于第二范式;对于第二范式的关系,如果所有的非主属性都不传递依赖于主键,则此关系就是第三范式的。 3.什么是部分依赖?什么是传递依赖?请举例说明。 答:部分依赖关系是指某个属性只由构成主键的部分列决定,而和另一些列无关。例如对关系:学生选课(学号,姓名,课程号,成绩),此关系的主键是(学号,课程号),而“姓名”列只由“学号”决定,与“课程号”无关,这就是部分依赖关系。 传递依赖指的是某个非主键属性是由另一个非主键属性决定的,而这个非主键属性再由主键决定。例如对关系:学生(学号、姓名、所在系,系主任),此关系的主键为(学号),而“系主任”由“所在系”决定,“所在系”又由“学号”决定,因此“系主任” 对“学号”是传递依赖关系。 4.第三范式的表是否一定不包含部分依赖关系? 答:是的。 5.对于主键只由一个属性组成的关系,如果它是第一范式关系,则它是否一定也是第二范式关系?答:是的。因为如果一个关系的主键只由一个属性组成,则此关系中一定不会存在部分依赖关系。 6.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设一名学生可以选修多门课程,一门课程可以被多名学生选修。一名学生有唯一的所在系,每门课程有唯一的课程名和学分。请指出此关系模式的候选键,判断此关系模式是第几范式的;若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。 答:候选键为:(学号,课程号),它也是此关系模式的主键。由于存在函数依赖:学号→姓名,课程号→课程名 因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表。分解如下:学生表(学号,姓名,所在系,性别),主键为“学号”,已属于第三范式。 课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式。 选课表(学号,课程号,成绩),主键为(学号,课程号),已属于第三范式 7.设有关系模式:学生表(学号,姓名,所在系,班号,班主任,系主任),其语义为:一名学生只在一个系的一个班学习,一个系只有一名系主任,一个班只有一名班主任,一个系可以有多个班。请指出此关系模式的候选键,判断此关系模式是第几范式的;若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。

数据库原理及应用 练习题及参考答案

数据库原理与应用练习题及参考答案 一、选择题 1.一下关于关系的说法正确的是( A ) A.一个关系就是一张二维表 B.在关系所对应的二维表中,行对应属性,列对应元组。 C.关系中各属性不允许有相同的域。 D.关系的各属性名必须与对应的域同名。 2.关系数据表的关键字可由( D )属性组成。 A.一个 B.两个 C.多个 D.一个或多个 3.进行自然连接运算的两个关系( A ) A.至少存在一个相同的属性名 B.可不存在任何相同的属性名 C.不可存在个相同的属性名 D.所有属性名必须完全相同 4.概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的( B )。 A.数据模型 B.概念模型 C.层次模型 D.关系模型 5.Access 2010 数据库具有很多特点,下列叙述中,正确的是( B )。 A. Access 2010数据表可以保存多种数据类型,但是不包括多媒体数 B. Access 2010可以通过编写应用程序来操作数据库中的数据 C. Access 不能支持 Internet/Intranet 应用 D. Access 2010 使用切换面板窗体管理数据库对象 6.数据表的基本对象是( A ) A.表 B.查询 C.报表 D.窗体 7.利用Access 2010 创建数据库文件,其扩展名是( B ) A.mdb B.accdb C.xlsx D. acc 8.启动Access 2010 后,最先显示的是什么界面( C ) A.数据库工作界面 B.“打开”窗口 C. Backstage D导航窗格 9.在 Access 数据库对象中,不包括的是( B ) A.表 B.向导 C.窗体 D.模块 10.表的组成内容包括( C ) A.查询和字段 B.报表和字段 C.字段和记录 D.记录和窗体 11.在 Access 2010 数据库的表设计视图中,不能进行的操作是( A ) A.修改字段类型 B.设置索引 C.增加字段 D.删除记录

数据库习题

数据库习题 第一讲走进数据库 1.1 走进数据库 1数据库系统与文件系统的最根本的区别是()。 A.文件系统只能管理程序文件,而数据库系统可以管理各种类型文件 B.数据库系统复杂,而文件系统简单 C.文件系统管理的数据量少,而数据库系统可以管理庞大数据量 D.文件系统不能解决数据冗余和数据的独立性,而数据库系统能 正确答案: D 2下述不是DBA数据库管理员的职责的是()。 A.完整性约束说明 B.定义数据库模式 C.数据库管理系统设计 D.数据库安全 正确答案: C 3数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 正确答案: A 4()是以一定的组织方式将相关的数据组织在一起,长期存放在计算机内,可为多个用户共享,与应用程序彼此独立,统一管理的数据集合。 正确答案:数据库 5在数据库的三级模式结构中,描述数据库中全体数据的逻辑结构和特征的是()。 正确答案:模式 1.2 关系数据库 1 在关系运算中,选择运算的含义是()。 A.从一个关系中找出满足给定条件的元组组成一个新的关系 B.从一个关系中找出需要的属性组成一个新的关系 C.从一个关系中找出满足条件的元组和属性组成一个新的关系 D.以上3 种说法均是正确的 正确答案: A 2 在“学生表”中,要查找所有年龄大于30 岁姓王的男同学,所采用的关系运算是()。 A.选择 B.投影 C.连接 D.自然连接 正确答案: A 3 在关系运算中,()运算得到的新关系中属性个数通常多于原关系中属性个数。

数据库原理与应用-期末考试复习题

数据库原理期末考试复习题 一、单选题 1.在数据库中存储的是(C)。 A. 数据 B. 数据模型 C. 数据及数据之间的联系 D. 信息 2.现有一个“教师”表,其中一个字段是教师的住址(字符型,20位长),如果不希望此字段包含空值,即某位教师现没有住址,则希望此字段自动填入“还没有”,应该( C )。 A. 为此列创建一个check约束 B. 为此列创建一个foreign key约束 C. 为此列创建一个default约束 D. 为此列创建一个primary key约束3.数据库系统包括( D )。 A. DB、DBMS B. DB、DBA C. DB、DBMS、DBA、计算机硬件 D. DB、DBMS、DBA、OS、计算机硬件 4.假设同一名称的产品有不同的型号和产地,则计算每种产品平均单价的SQL语句是(D)。 A. SELECT 产品名称,AVG(单价) FROM 产品GROUP BY 单价 B. SELECT 产品名称,AVG(单价) FROM 产品ORDER BY 单价 C. SELECT 产品名称,AVG(单价) FROM 产品ORDER BY 产品名称 D. SELECT 产品名称,AVG(单价) FROM 产品GROUP BY 产品名称 5.数据库中,数据的物理独立性是指(C)。 A. 数据库与数据库管理系统的相互独立 B. 用户程序与DBMS的相互独立 C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立 6.关系数据库规范化是为解决关系数据库中(B)问题而引入的。 A. 提高查询速度 B. 保证数据的安全性和完整性 C. 减少数据操作的复杂性 D. 插入异常、删除异常和数据冗余 7.当前数据库应用系统的主流数据模型是(C)。 A. 层次数据模型 B. 网状数据模型 C. 关系数据模型 D. 面向对象数据模型 8.如果两个实体集之间的联系是m:n,转换为关系时(B)。 A. 联系本身不必单独转换为一个关系 B. 联系本身必须单独转换为一个关系 C. 联系本身也可以不单独转换为一个关系 D. 将两个实体集合并为一个实体集9.候选码中的属性可以有(C)。 A. 0个 B. 1个 C. 1个或多个 D. 多个 10.下列关于关系性质的描述中正确的是(B )。 A. 关系中行的值可以相同 B. 关系中列的值可以相同 C. 关系中行的次序不可以交换 D. 关系中列的次序不可以交换 11.在SQL 语句中,与X BETWEEN 20 AND 30 等价的表达式是(B)。 A. X>20 AND X<30 B. X>=20 AND X<=30 C. X>20 AND X<=30 D. X>=20 AND X<30 12.数据库系统具有许多特点,使其很快成为数据处理的主要工具,下列哪个特点不是数据库系统的特点(B )。 A. 具有复杂的数据结构 B. 不存在数据冗余

对象关系模型数据库解析

面向对象数据库系统(Object Oriented Data Base System,简称OODBS)是数据库技术与面向对象程序设计方法相结合的产物。 对于OO数据模型和面向对象数据库系统的研究主要体现在:研究以关系数据库和SQL为基础的扩展关系模型;以面向对象的程序设计语言为基础,研究持久的程序设计语言,支持OO模型;建立新的面向对象数据库系统,支持OO数据模型。 面向对象程序设计方法是一种支持模块化设计和软件重用的实际可行的编程方法。它把程序设计的主要活动集中在建立对象和对象之间的联系(或通信)上,从而完成所需要的计算。一个面向对象的程序就是相互联系(或通信)的对象集合。面向对象程序设计的基本思想是封装和可扩展性。 面向对象数据库系统支持面向对象数据模型(以下简称OO模型)。即面向对象数据库系统是一个持久的、可共享的对象库的存储和管理者;而一个对象库是由一个OO模型所定义的对象的集合体。 一个OO模型是用面向对象观点来描述现实世界实体(对象)的逻辑组织、对象间限制、联系等的模型。一系列面向对象核心概念构成了OO模型的基础。概括起来,OO模型的核心概念有如下一些: (1)对象(Object)与对象标识OID(Object IDentifier) 现实世界的任一实体都被统一地模型化为一个对象,每个对象有一个唯一的标识,称为对象标识(OID)。 (2)封装(Encapsulation) 每一个对象是其状态与行为的封装,其中状态是该对象一系列属性(Attribute)值的集合,而行为是在对象状态上操作的集合,操作也称为方法(Method)。 (3)类(C1ass) 共享同样属性和方法集的所有对象构成了一个对象类(简称类),一个对象是某一类的一个实例(instance)。 (4)类层次(结构) 在一个面向对象数据库模式中,可以定义一个类(如C1)的子类(如C2),类Cl 称为类C2的超类(或父类)。子类(如C2)还可以再定义子类(如C3)。这样,面向对象数据库模式的一组类形成一个有限的层次结构,称为类层次。 (5)消息(Message) 由于对象是封装的,对象与外部的通信一般只能通过显式的消息传递,即消息从外部传送给对象,存取和调用对象中的属性和方法,在内部执行所要求的操作,操作的结果仍以消息的形式返回。 OODB语言用于描述面向对象数据库模式,说明并操纵类定义与对象实例。OODB语言主要包括对象定义语言(ODL)和对象操纵语言(OML),对象操纵语言中一个重要子集是对象查询语言(OQL)。OODB语言一般应具备下述功能: (1)类的定义与操纵 面向对象数据库语言可以操纵类,包括定义、生成、存取、修改与撤销类。其中类的定义包括定义类的属性、操作特征、继承性与约束等。 (2)操作/方法的定义 面向对象数据库语言可用于对象操作/方法的定义与实现。在操作实现中,语言的命令

数据库原理及应用(第2版)习题参考答案..

第1章数据概述 一.选择题 1.下列关于数据库管理系统的说法,错误的是C A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是D A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率 3.下列说法中,不属于数据库管理系统特征的是C A.提供了应用程序和数据的独立性 B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合 C.用户访问数据时,需要知道存储数据的文件的物理信息 D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失 5.在数据库系统中,数据库管理系统和操作系统之间的关系是D A.相互调用 B.数据库管理系统调用操作系统 C.操作系统调用数据库管理系统 D.并发运行 6.数据库系统的物理独立性是指D A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于A A.系统软件B.工具软件 C.应用软件D.数据软件 8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是B A.数据库B.操作系统 C.应用程序D.数据库管理系统 9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是D A.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端 B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件 C.客户/服务器结构比文件服务器结构的网络开销小 D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享

相关文档
相关文档 最新文档