目录
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的学生视图发生改变外,看看学生表中发生了什么变化)
8.删除电子05的学生视图
创建视图,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学生视图