SQL第四次实验

目录

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

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

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

4.修改问题2中生物05的学生作业情况视图,并将作业2成绩和作业3成绩去掉

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

6.将电子05的学生视图中的赵奕性别改成“女”(数量电子05的学生视图发生改变外,看看学生表中发生了什么变化)

 7.删除电子05的学生视图中赵奕的记录

8.删除电子05的学生视图​​​​​​​


实验表见实验2

创建视图,CREATE VIEW语句必须在第一行,建议使用GO进行批处理。

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

CREATE VIEW 学生视图
AS SELECT 学号,姓名,性别,专业班级,出生日期
FROM 学生表
WHERE 专业班级='电子05'

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

CREATE VIEW 生物05学生作业情况视图(学号,姓名,课程号,作业1成绩,作业2成绩,作业3成绩)
AS SELECT 学生表.学号,姓名,课程号,作业1成绩,作业2成绩,作业3成绩
	FROM 学生表,学生作业表
	WHERE 学生表.学号=学生作业表.学号
	AND 专业班级='生物05'

注意:创建视图,列名称前面不要接表名。

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

CREATE VIEW 学生作业平均成绩视图(学号,作业1平均成绩,作业2平均成绩,作业3平均成绩)
AS SELECT 学号,AVG(作业1成绩) AS 作业1平均成绩,AVG(作业2成绩) AS 作业2平均成绩,AVG(作业3成绩) AS 作业3平均成绩
	FROM 学生作业表
	GROUP BY 学号

4.修改问题2中生物05的学生作业情况视图,并将作业2成绩和作业3成绩去掉

ALTER VIEW 生物05学生作业情况视图(学号,姓名,课程号,作业1成绩)
AS SELECT 学生表.学号,姓名,课程号,作业1成绩
	FROM 学生表,学生作业表
	WHERE 学生表.学号=学生作业表.学号
	AND 专业班级='生物05'

注:DELETE是删除行,修改列要用ALTER

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

INSERT INTO 电子05学生视图(学号,姓名,性别,专业班级,出生日期)
VALUES('0596','赵奕','男','电子05','1986-6-8')

SELECT * FROM 电子05学生视图
SELECT * FROM 学生表

视图和学生表都增加了一行记录。

视图是一个虚表,并没有储存数据,在视图上更新数据会影响着原表的数据。

6.将电子05的学生视图中的赵奕性别改成“女”(数量电子05的学生视图发生改变外,看看学生表中发生了什么变化)

UPDATE 电子05学生视图
SET 性别='女'
WHERE 姓名='赵奕'

SELECT * FROM 电子05学生视图
SELECT * FROM 学生表

 7.删除电子05的学生视图中赵奕的记录

DELETE 电子05学生视图
WHERE 姓名='赵奕'

8.删除电子05的学生视图

DROP VIEW 电子05学生视图
  • 16
    点赞
  • 89
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值