发布时间 : 星期四 文章课后习题更新完毕开始阅读
(
SELECT SNO FROM SC WHERE CNO IN (SELECT CNO FROM C
WHERE TNAME='王志强' ) )
GO
(5) USE JXGL
GO
SELECT CNO FROM C EXCEPT SELECT CNO
FROM S JOIN SC ON S.SNO=SC.SNO AND S.SNAME='李小刚' GO
(6) USE JXGL
GO
select SNO,count(CNO) as 选修门数 from sc
group by SNO having count(CNO)>1 GO
6.利用T-SQL语句声明一个游标,查询习题2数据库S表中所有男生的信息,并读取数据。
(1) 读取最后一条记录。 (2) 读取第一条记录。 (3) 读取第5条记录。
(4) 读取当前记录指针位置后第3条记录。
解:USE JXGL
GO
DECLARE S_Cursor SCROLL CURSOR FOR SELECT *
FROM S
WHERE SEX='M'
OPEN S_Cursor
FETCH LAST FROM S_Cursor FETCH PRIOR FROM S_Cursor FETCH ABSOLUTE 5 FROM S_Cursor FETCH relatave 3 FROM S_Cursor CLOSE S_Cursor 关闭游标 DEALLOCATE S_Cursor 释放游标0 GO
习 题 7
1.名词解释:
视图 索引 聚集索引 唯一索引 答:
视图:是从基本表或其他视图中导出的表,它本身不独立存储在数据库中,也就是数据库中只存放视图的定义而不存放视图的数据。
索引:是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。
聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物理顺序。这种索引对查询非常有效,在每一张基本表中只能有一个聚集索引。
唯一索引:不允许具有索引值相同的行,从而禁止重复的索引或键值。并在每次使用 INSERT 或 UPDATE 语句添加数据时进行检查
5. 对于教务管理数据库中基本表SC,建立视图如下: CREATE VIEW S_GRADE(SNO,C_NUM,AVG_GRADE) AS SELECT SNO,COUNT(CNO),AVG(GRADE) FROM SC
GROUP BY SNO
试判断下列查询和更新是否允许执行。若允许,写出转换到基本表SC上的相应操 作:
(1) SELECT * FROM S_GRADE (2) SELECT SNO,C_NUM FROM S_GRADE
WHERE AVG_GRADE>80; (3) SELECT SNO,AVG_GRADE FROM S_GRADE
WHERE C_NUM>(SELECT C_NUM FROM S_GRADE SNO=’200912121’); (4) UPDATE S_GRADE
SET C_NUM=C_NUM+1 WHERE SNO=’200915122’ (5) DELETE FROM S_GRADE WHERE C_NUM>4;
解:
答:⑴ 允许查询。相应的操作如下:
SELECT SNO,COUNT(CNO) AS C_NUM,AVG(GRADE) AS AVG_GRADE FROM SC
GROUP BY SNO;
⑵ 允许查询。相应的操作如下:
SELECT SNO,COUNT(CNO)AS C_NUM FROM SC
GROUP BY SNO
HAVING AVG(GRADE)>80;
⑶ 允许查询。相应的操作如下:
SELECT SNO,AVG(GRADE) AS AVG_GRADE FROM SC
GROUP BY SNO
HAVING COUNT(CNO)>(SELECT COUNT(CNO) FROM SC
GROUP BY SNO
HAVING SNO=’200912121’);
⑷ 不允许。C_NUM是对SC中的学生选修课程的门数进行统计,在未更改SC表时,要在视图S_GRADE中更改门数,是不可能的。
⑸ 不允许。在视图S_GRADE中删除选修课程的门数在4门以上的学生元组,势必造成SC中这些学生学习元组的删除,这不一定是用户的原意,因此使用分组和聚合操作的视图,不允许用户执行更新操作。
6.简述创建索引的必要性和作用。
答:数据库的索引就类似于书籍的目录,如果想快速查找而不是逐页查找指定的内容,可以通过目录中章节的页号找到其对应的内容。类似地,索引通过记录表中的关键值指向表中的记录,这样数据库引擎就不用扫描整个表而定位到相关的记录。相反,如果没有索引,则会导致SQL Server搜索表中的所有记录,以获取匹配结果,这样就会大大降低查询的效率。
岁月如轮,也许还没有做好准备,就碾碎了绚烂多姿的梦想;流年似水,也许只是一个转身,就冲淡了深情相依的誓言。生活不相信眼泪,只有坚强,才能把自己从痛苦的深渊中拔出来。要始终坚信,山重水复之后,总会呈现一派柳暗花明。 女人,要学会宽容。“金无足赤,人无完人”,谁都不可能十全十美,每个人都是被上帝咬过一口的苹果。所以,不能只盯着这个丑陋的缺口,要嗅到苹果的清香。 包容他人缺点,宽容他人错误,给他解释和改正的机会。自然,宽容不是没有底线的纵容,如果他把宽容视为懦弱,肆意践踏,就可以紧闭门扉,将之拒绝在宽容的门外。 女人,要懂得爱自己。工作重要,但不要为了争名夺利,身心俱疲;家人重要,但不要为了家人,失去自我。懂得做一只精瓷小碗,让人珍惜惹人疼;不要做一只粗瓷大碗,所有的粗活重活都抢着干。
不懂得爱自己的女人往往最可怜,倾其所有,最后却一无所有。张爱玲说:越是不爱自己,越是没人爱你。确实,如果连自己都不懂得爱自己,还怎么奢望别人爱你? 女人,要有一颗善良的心。张爱玲说:打扮得再美,穿得再昂贵,那只是个幌子,用善良做的外衣才是真的美。