作者 : Dolphin
原文地址:http://blog.csdn.net/qingdujun/article/details/27826439
一、填空题
1. SQL语言的数据定义功能包括①模式定义、②表定义、③视图和④索引的定义。
2. 视图是一个虚表,它是从①基本表或其他视图表中导出的表。在数据库中,只存放视图的②定义,不存放视图的③数据。
二、简答/综合
1. 简述在 SQL中使用视图的优点。
答:1)简化操作
2)从多角度看同一数据
3)视图给数据提供了一定逻辑独立性
4)视图给数据提供了安全保护
5)更清晰的表达查询
2. 叙述使用SQL语言实现各种关系运算的方法。
3. 简述游标的作用。
答:游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。主语言是面向记录的,一组主变量一次只能存放一条记录,仅使用主变量并不能完全满足SQL语句向应用程序输出数据的要求。嵌入式SQL引入了游标的概念,用来协调这两种不同的处理方式。
4. 设有如图所示的三个关系,并假定这三个关系框架组成的数据模型就是用户子模式。其中各个属性的含义如下A#(商店代号)、ANAME(商店名)、WQTY(店员人数)、CITY(所在城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。试用SQL语言写出下列查询,并给出执行结果:
(1) 找出店员人数不超过100人或者在长沙的所有商店的代号和商品名。
(2) 找出供应书包的商店名。
(3) 找出至少供应代号为256的商店所供应的全部商品的商店名和所在城市。
A
| 
 A#  | 
 ANAME  | 
 WQTY  | 
 CITY  | 
| 
 101  | 
 韶山商店  | 
 15  | 
 长沙  | 
| 
 204  | 
 前门百货商店  | 
 89  | 
 北京  | 
| 
 256  | 
 东风商店  | 
 501  | 
 北京  | 
| 
 345  | 
 铁道商店  | 
 76  | 
 长沙  | 
| 
 620  | 
 第一百货公司  | 
 413  | 
 上海  | 
B
| 
 B#  | 
 BNAME  | 
 PRICE  | 
| 
 1  | 
 毛笔  | 
 21  | 
| 
 2  | 
 羽毛球  | 
 784  | 
| 
 3  | 
 收音机  | 
 1325  | 
| 
 4  | 
 书包  | 
 242  | 
AB
| 
 A#  | 
 B#  | 
 QTY  | 
| 
 101  | 
 1  | 
 105  | 
| 
 101  | 
 2  | 
 42  | 
| 
 101  | 
 3  | 
 25  | 
| 
 101  | 
 4  | 
 104  | 
| 
 204  | 
 3  | 
 61  | 
| 
 206  | 
 1  | 
 241  | 
| 
 206  | 
 2  | 
 91  | 
| 
 345  | 
 1  | 
 141  | 
| 
 345  | 
 2  | 
 18  | 
| 
 345  | 
 4  | 
 74  | 
| 
 602  | 
 4  | 
 125  | 
5. 有图书登记表TS,具有属性:BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。按下列要求用SQL语句进行设计:
a) 按图书编号BNO建立TS表的索引ITS。
b) 查找按出版社统计其出版图书总数。
c) 删除索引ITS。
4.已知三个关系R、S和T如图所示。
R S W
| 
 A  | 
 B  | 
 C  | 
| 
 a1 a2 a3 a4  | 
 b1 b3 b2 b4  | 
 20 22 18 12  | 
| 
 A  | 
 D  | 
 E  | 
| 
 a1 a2 a1  | 
 d1 d2 d2  | 
 15 18 24  | 
| 
 D  | 
 F  | 
| 
 D2 d3  | 
 f2 f3  | 
试用SQL语言实现如下操作:
(1)将R、S和T三关系按关联属性建立一个视图R-S-T;
(2)对视图R-T-S按属性A分组后,求属性C和E的平均值。
5.设有关系R和S如图所示。
R S
| 
 A  | 
 B  | 
| 
 a1 a2 a3  | 
 b1 b2 b3  | 
| 
 A  | 
 C  | 
| 
 a1 a2 a3  | 
 40 50 55  | 
试用SQL语言实现:
(1) 查询属性C > 50时,R中与相关联的属性B之值。
(2) 当属性C = 40时,将R中与之相关联的属性B值修改为B4。
6.已知二个关系R和S如图所示。
R S
| 
 A  | 
 B  | 
 C  | 
| 
 a1 a1 a2 a2  | 
 b1 b2 b1 b3  | 
 20 22 18 a2  | 
| 
 A  | 
 D  | 
 E  | 
| 
 a1 a2 a1  | 
 d1 d2 d2  | 
 15 18 24  | 
执行如下SQL语句:
(1) CREATE SQL VIEW H(A,B,C,D,E)
AS SELECT A,B,R.C,D,E
FROMR,S
WHERE R.C=S.C;
(2) SELECT B,D,E
FROM H
WHERE C=‘C2’
试给出: (1)视图 H内容;
(2)对视图 H的查询结果。
7.已知关系R如图所示。
R
| 
 A  | 
 B  | 
 C  | 
| 
 97 97 97 98 98 98 99 99  | 
 b1 b2 b3 b1 b2 b3 b1 b2  | 
 84 92 98 72 84 95 88 94  | 
试用SQL语言实现如下操作:
(1) 按属性A分组,求出每组中在属性C上的最大值和最小值,且将它们置于视图RVE中。
(2) 在视图RVE中查询属性A=‘98’的记录。
8.已知学生表S和学生选课表SC。其关系模式如下:
S(SNO,SN,SD,PROV)
SC(SNO,CN,GR)
其中,SNO为学号,SN为姓名,SD为系名,PROV为省区,CN为课程名,GR为分数。
试用SQL语言实现如下操作:
(1) 查询“信息系”的学生来自那些省区。
(2) 按分数降序排序,输出“英语系”的学生选修了“计算机”课程的学生的姓名和分数。
9.设有学生表S(SNO,SN)(SNO为学生号,SN为姓名)和学生选修课程表SC(SNO,CNO,CN,G)(CNO为课程号,CN为课程名,G为成绩),试用SQL语言完成以下2题:
(1)建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按CNO升序排序;
(2)从视图V-SSC上查询平均成绩在90分以上的SN,CN和G。
1. 对于下列四个关系模式:
供应商关系 SUPPLIERS(SNUMBER,SNAME,STATUS,SCITY)
零件关系 PARTS(PNUMBER,PNAME,COLOR,WEIGHT)
工程项目关系JOBS(JNUMBER,JNAME,JCITY)
供应关系SPJ(SNUMBER,PNUMBER,JNUMBER,QUANTITIES)
其中各属性表示SNUMBER:供应商编号;SNAME:供应商姓名;STATUS:状
态;SCITY:城市;PNUMBER:零件编号;PNUMBER:零件名;COLOR:颜色;
WEIGHT:重量;JNUMBER:工程项目编号;JNAME:工程项目名;JCITY:城市;QUANTIES:数量
试分别用 SQL语句表示以下各类查询。
(1) 用CREATE TABLE建立上述四张表,并指出主键和外键。
(2) 检索供应工程J1 零件P1 的供应商编号。
(3)检索零件重量在16-19之间的零件的全部信息。
(4)检索上海的供应商姓名。
(5)检索住在同一个城市的一对供应商编号。
(6)检索供应商S1提供零件的工程项目名称。
(7)求没有使用天津生产的红色零件的工程项目号。
(8 ) 求使用全部零件的工程项目名称。
(9)求使用供应商S1所提供的全部零件的工程项目号。
(l0)求由一个以上供应者提供的零件号。
(l1) 将工程名为“环保” 的所有供应数量提高10%。
(l2) 建立一个视图,包括每个工程项目使用零件的总数。
10.设有一个数据库含如图6.6所示的三个关系表,使用SQL_SERVER设置各个表操作之间的完整性约束。
S SC
| 
 学号  | 
 姓名  | 
 班号  | 
| 
 S2 S6 S12  | 
 王华 李英 刘强  | 
 98001 98002 98003  | 
| 
 学号  | 
 课程号  | 
 分数  | 
| 
 S2 S6 S12 S2 S6 S12  | 
 K1 K1 K1 K12 K12 K12  | 
 84 79 95 91 82 67  | 
C
| 
 课程号  | 
 课程名称  | 
| 
 K1 K12  | 
 英语 高等数学  | 
参考文献:王珊,萨师煊.数据库系统概论(第4版) [M].北京:高等教育出版社,2006.79-126,239.
原文地址:http://blog.csdn.net/u012339743/article/details/27826439