SQL server数据库实验(四)数据库的数据更新和视图定义

请针对教学管理数据库SCT进行各种数据更新

1.“计算机”学院“软件”专业新进一名男生,学号:E20180001,姓名:张成,年龄:19,电话:12700000010,邮箱:zc@dbs.com;

insert
into STUDENT055(SNO,SNAME,SSEX,SPROF,SDEPT,SAGE,STEL,EMAIL)
values('E20180001','张成','男','软件','计算机',19,'1270000000','zc@dbs.com')

2.新开一门“计算机网络”课程作为“选修”课,课程号为“CS-005”,学分为3分;

insert 
into COURSE055(CNO,CNAME,CREDIT,CTYPE)
values('CS-005','计算机网络','3','选修')

3.学号“E20180001”的学生选修“92001”号教师开设的“CS-005”号课程;

insert 
into SCT055(SNO,CNO,TNO)
values('E20180001','CS-005','92001')

4.学号“E20180001”的学生选修“CS-001”号课程

insert
into SCT055(SNO,CNO,TNO)
values('E20180001','CS-001',(
select distinct SCT055.TNO
from TEACHER055,SCT055
where SCT055.TNO = TEACHER055.TNO and
SCT055.CNO='CS-001')
)                                                                                                               

5.学号“E20160120”的学生选修“92001”号教师开设的“计算机网络”课程;(不能自己到数据库中查看“计算机网络”的课程号)

insert
into SCT055(SNO,CNO,TNO)
values('E20160120',(
select CNO
from COURSE055
where CNAME = '计算机网络'),
'92001')

6.将“计算机”学院学生的年龄加1岁

update STUDENT055
set SAGE = SAGE + 1
where SDEPT = '计算机'

7.将“数据库”课程的学分改为2

update COURSE055
set CREDIT = 2
where CNO in(
select CNO
from COURSE055
where CNAME = '数据库')

8.将所有成绩小于60分的学生的成绩加10分

update SCT055
set GRADE = GRADE + 10
where GRADE < 60

9.修改学号为“E20180001”的学生信息,将姓名改为‘王红’

update STUDENT055
set SNAME='王红' , SSEX = '女'
where SNO = 'E20180001'

10.教师“王建宁”的职称晋升为“教授”,请在数据库中进行修改

update TEACHER055
set TITLE = '教授'
where TNAME = '王建宁'

11.删除学号“E20160120”的学生选修“计算机网络”课程的选课记录

delete 
from SCT055
where SNO='E20160120' and CNO in(
select CNO
from COURSE055
where CNAME = '计算机网络'
)

12.教师“王建宁”开设的“计算机网络”课程因选课人数不达标而停开,请做删除处理

delete 
from SCT055
where CNO in(
select CNO
from COURSE055
where CNAME = '计算机网络') and TNO in(
select TNO
from TEACHER055
where TNAME = '王建宁')

13.统计所有学生选课的平均成绩,保存到一张表中;(包含没有选课的学生)

select STUDENT055.SNO,AVG(GRADE) as '平均分'
from STUDENT055 left join SCT055
on STUDENT055.SNO = SCT055.SNO
group by STUDENT055.SNO

14.统计所有课程的最高分、最低分和平均分,保存到一张表中。(包含没有学生选的课程)

select COURSE055.CNO,MAX(GRADE)as'最高分',
MIN(GRADE)as '最低分',AVG(GRADE) as '平均分'
from COURSE055 left join SCT055
on COURSE055.CNO = SCT055.CNO
group by COURSE055.CNO
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值