发布时间 : 星期六 文章数据库上机试验报告dk更新完毕开始阅读
语句执行后JSJ86_C140表中数据:
3、将JSJ86_S140表中已修学分数大于110的学生记录删除。
1.先查看选修了课程的学生的总已修学分
SELECT JSJ86_SC140.S#, SUM(JSJ86_C140.CREDIT) AS TOTAL_CREDIT FROM JSJ86_C140 INNER JOIN
JSJ86_SC140 ON JSJ86_C140.C# = JSJ86_SC140.C# GROUP BY JSJ86_SC140.S#
2.建立其视图
CREATE VIEW S_TC(S#, TOTAL_CREDIT) AS SELECT JSJ86_SC140.S#,
SUM(JSJ86_C140.CREDIT) AS TOTAL_CREDIT FROM JSJ86_C140 INNER JOIN JSJ86_SC140 ON JSJ86_C140.C# = JSJ86_SC140.C#
GROUP BY JSJ86_SC140.S#
3.删除已修学分高于110的学生信息(从第一步中发现最高的选修分为9分,预计不会删除掉任何一个学生信息) DELETE FROM JSJ86_S140 WHERE (S# IN
(SELECT S# FROM S_TC
WHERE TOTAL_CREDIT > 110)) 4.查看运行后的JSJ86_S140表
4、将“张明”老师负责的“信号与系统”课程的学时数调整为56,同时增加一个学分。
UPDATE JSJ86_C140
SET PERIOD = 56, CREDIT = CREDIT + 1
WHERE (CNAME = '信号与系统') AND (TEACHER = '张明')
查看运行后的JSJ86_C140表
5、建立如下视图:
(1)居住在“西18”舍的男生视图,包括学号、姓名、出生日期、身高等属性。
(2)“张明”老师所开设课程情况的视图,包括课程编号、课程名称、平均成绩等属性。
(3)所有选修了“人工智能”课程的学生视图,包括学号、姓名、成绩等属性。
解:(1)先查找出学生然后对其建立视图 SELECT S#, SNAME, BDATE, HEIGHT FROM JSJ86_S140
WHERE (SEX = '男') AND (DORM LIKE '西18舍%')