数据库原理题大全(附答案) 联系客服

发布时间 : 星期日 文章数据库原理题大全(附答案)更新完毕开始阅读01f7401552d380eb62946da1

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

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 12.假定学生关系是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

14.若用如下的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

二、填空题

1.SQL是 。 答案:结构化查询语言

2.SQL语言的数据定义功能包括 ① 、 ② 、 ③ 和 ④ 。

答案:①定义数据库 ②定义基本表 ③定义视图 ④定义索引

3.视图是一个虚表,它是从 ① 中导出的表。在数据库中,只存放视图的 ② ,不存放视图的 ③ 。

答案:①一个或几个基本表 ②定义 ③对应的数据 4.设有如下关系表R、S和T: 以BH,XM,XB,DWH) S(DWH,DWM)

T(BH,XM,XB,DWH)

①实现R∪T的SQL语句是 。

②实现?DWH=‘100’(R)的SQL语句是 。 ③实现∏XM,XB(R)的SQL语句是 。

④实现∏XM,DWH(?XB=‘女’(R))的SQL语句是 。 ⑤实现R?? S的SQL语句是 。 ⑥实现∏XM,XB,DWM(?XB=‘男’(R?? S))的SQL语句是 。 答案:①SELECT * FROM R UNION SELECT * FROM T ②SELECT * FROM R WHERE DWH=‘100’ ③SELECT XM,XB FROM R

④SELECT XM,DWH FROM R WHERE XB=“女”

⑤SELECT R.BH,R.XM,R.XB,R.DWH, S.DWM FROM R,S

WHERE R.DWH=S.DWH

⑥SELECT R.XM,R.XB,S.DWM FROM R,S

WHERE R.DWH=S.DWH AND R.XB=“男”

5.设有如下关系表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 FROM R WHERE NAME LIKE“王%” 三.简述与应用题

2.叙述使用SQL语言实现各种关系运算的方法。

答: SQL语言没有提供关系的笛卡尔积、交和差运算。其他关系运算对应的SQL语句格式是:

R∪S SELECT语句(生成R) UNION

SELECT语句(生成S) 选择 SELECT*

FROM <表>

WHERE <指定选择的条件> 投影 SELECT <投影字段列表> FROM <表>

连接 SELECT <连接的字段列表> FROM <连接的两个表名> WHERE <连接条件>

9.已知学生表S和学生选课表SC。其关系模式如下: S(SNo,SN,SD,PROV) SC(SNO,CN,GR)

其中,SNO为学号,SN为姓名,SD为系名,PROV为省区,CN为课程名,GR为分数。

试用SQL语言实现下列操作:

(1).查询“信息系”的学生来自哪些省区。

(2).按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。 解:

(1).SELECT DISTINCT PROV FROM S

WHERE SD=“信息系” (2).SELECT SN,GR FROM S,SC

WHERE SD=“英语系”AND CN=“计算机”AND S.SNO=SC.SNO ORDER BY GR DESC; 10.设有学生表S(SNO,SN)(SNO为学号,SN为姓名)和学生选课表SC(SNO,CNO,CN,G)

(CNO为课程号,CN为课程名,G为成绩),试用SQL语言完成以下各题:

(1).建立一个视图V-SSC(SNo,SN,CNo,CN,G),并按CNO升序排序; (2).从视图V-SSC上查询个人平均成绩在90分以上的SN、CN和G。 解:

(1).CREATE VIEW V-SSC(SNO,SN,CNO,CN,G) AS SELECT S.SNO, SN,CNO,CN,G FROM S,SC

WHERE S.SNO=SC.SNO ORDER BY CNO (2).SELECT SN,CN,G FROM V-SSC GROUP BY SNO

HAVING AVG(G)>90

第四部分 关系数据理论

一、单项选择题

2.设计性能较优的关系模式称为规范化,规范化主要的理论依据是 。 A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑 答案:A

3.规范化理论是关系数据库进行逻辑设计的理论依据。根据这个理论,关系数据库中的关系必须满足:其每一属性都是 。 A.互不相关的 B.不可分解的 C.长度可变的 D.互相关联的 答案:B

4.关系数据库规范化是为解决关系数据库中 问题而引入的。 A.插入、删除异常和数据冗余 B.提高查询速度

C.减少数据操作的复杂性 D.保证数据的安全性和完整性 答案:A

5.规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及 _ 的缺陷。

A.数据的不一致性 B.结构不合理 C.冗余度大 D.数据丢失 答案:C

6.当关系模式R(A,B)已属于3NF,下列说法中 是正确的。 A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常