数据库上机实验4 数据更新和视图

一、实验目的

1、熟练掌握数据插入、修改和删除操作语句。

2、掌握视图的创建和删除语句。

3、理解视图的查询、插入、修改和删除操作。

二、实验内容

根据实验1中创建的学生作业管理数据库以及其中的学生表、课程表和学生作业表,进行以下操作。每一个任务都要给出SQL语句,并且列出查询结果。

1、在学生表中添加一条学生记录,其中,学号为0593,姓名为张乐,性别为男,专业班级为电子05。

insert into student values('0593','张乐','男','电子05',null,null)

2、将所有课程的学分数变为原来的两倍。

update course set credit=credit*2

3、删除张乐的信息。

delete from student where sname='张乐'

4、创建一个电子05的学生视图(包括学号、姓名、性别、专业班级、出生日期)。

create view v_dz05
as
select sno,sname,ssex,major,birth  from student
where major='电子05'

5、创建一个生物05的学生作业情况视图(包括学号、姓名、课程名、作业1成绩、作业2成绩、作业3成绩)。

create view v_sw05
as
select student.sno,sname,cname,cj1,cj2,cj3  from student,course,score
where student.sno=score.sno and course.cno=score.cno and major='生物05'

6、创建一个学生作业平均成绩视图(包括学号、作业1平均成绩、作业2平均成绩、作业3平均成绩)。

create view v_avgzy
as
select sno 学号,avg(cj1) 作业1平均成绩,avg(cj2) 作业2平均成绩,avg(cj3) 作业3平均成绩
from score
group by sno

7、修改第5题中生物05的学生作业情况视图,将作业2成绩和作业3成绩去掉。

alter view v_sw05
as
select student.sno,sname,cname,cj1
from student,course,score
where student.sno=score.sno and course.cno=score.cno and major='生物05'

8、向电子05的学生视图中添加一条记录,其中学号为0596,姓名为赵亦,性别为男,专业班级为电子05,出生日期为1986-6-8(除了电子05的学生视图发生变化之外,看看学生表中发生了什么变化?)。

insert into v_dz05 values('0596','赵亦','男','电子05','1986-6-8')
学生表也新增加了赵亦的一条记录。

9、将电子05的学生视图中赵亦的性别改为“女”(除了电子05的学生视图发生变化之外,看看学生表中发生了什么变化?)。

update v_dz05 set ssex='女' where sname='赵亦'
学生表中赵亦的性别也改成了女。

10、删除电子05的学生视图中赵亦的记录。

delete from v_dz05 where sname='赵亦'

11、删除电子05的学生视图。

drop view v_dz05

三、实验指导

1、启动SQL Server2012软件。

2、通过分离附加的方法,将实验1所创建的作业管理数据库恢复到该软件中。

3、SQL Server中,程序不区别大小写,特别要注意程序中的标点符号,一定要在英文半角状态下输入,否则会出错。

4、给列赋值时要注意字符要用单引号引起来,而其它类型的值则不需要用单引号。

5、修改和删除记录一定要指定条件,否则就会修改或删除表中的全部记录。

6、并不是所有的视图都可以对其进行添加记录、修改记录和删除记录操作,只有可更新视图才可以实现上述操作。

7、由于视图是张虚表,所以对视图更新,最终转换成对基本表的更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Meteor.792

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值