发布时间 : 星期日 文章数据库原理题大全(附答案)更新完毕开始阅读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.仍存在一定的插入和删除异常