数据库-视图归纳

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

什么是视图?

视图是从一个或多个表(或视图)导出的表

使用视图有什么优点?

答:1.为用户集中数据,简化用户的数据查询和处理

2.屏蔽数据库的复杂性

3.简化用户权限的管理

4.便于数据的共享

5.可以重新组织数据以便输出到其他应用程序中

视同和表有什么区别?

视图是一张虚表,视图所对应的数据不进行实际存储,不占用存储空间,表是一张实表,表所对应的数据进行实际存储,占用存储空间

视图可以用于界面方式创建和命令方式创建,本章着重于命令方式创建命令方式创建视图格式如下:

CREATE VIEW 视图名【视图列名1,视图列名2】

AS

查询语句

视图和表一样可以用作查询,更新,修改和删除

例如

查找平均成绩在80分以上学生的学号和平均成绩

CREATE VIEW CS_CJ (学号,平均成绩)

AS

SELECT 学号,AVG(成绩)

FROM CJB

GROUP BY 学号

SELECT 学号,平均成绩 FROM CS_CJ

WHERE 平均成绩>=80

更新视图的作用?

通用更新视图(包括插入、修改和删除)数据可以修改基本数据;但并不是所有的视图都可以更新,只有对满足可更新条件的视图,才能进行更新。

哪些视图可更新

1.创建视图的SELECT语句中没有聚合函数,且没有TOP、GROUP BY、UNION子句

及DISTINCT关键字

2.创建视图的SELECT 语句中不包括从基本表列通过计算所得的列

3.创建视图的SELECT语句的FROM句子中至少要包含一个基本表

例如向CS_XS视图中插入以下记录

(‘081115’,’刘明仪’,1,’1998-3-2’,’计算机’,50,NULL)

INSERT INTO CS_XS

VALUES (‘081115’,’刘明仪’,1,’1998-3-2’,’计算机’,50,NULL)

例如:将CS_KC视图中学号为081101的学生的101号课程成绩改为80

UPDATE CS_KC

SET 成绩=80

WHERE 学号=’081101’ AND 课程号=’101’

修改视图,举例说明

例:将CS_SX视图修改为只包含计算机专业学生的学号、姓名和总学分

ALTER VIEW CS_XS

AS

SELECT 学号,姓名,总学分

FROM XSB

WHERE 专业=’计算机’

删除视图

例如:删除视图CS_XS

DROP VIEW CS_XS

视图和表在以命令方式进行操作时,就是视图名与表名的差别,在操作视图时应用视图名,在操作表时应用表名。

注意:

在使用视图时,要追鱼下列事项

1.只有在当时数据库中才能创建视图,视图的命名必须遵循标识符命名规则,不能与表

同名。

2.不能把规则、默认值或触发器与视图相关联。

在操作表或视图时需谨记**

若SELECT 语句后面出现了聚合函数,则其他的列名要么用聚合函数,要么用在GROUP BY 句子中。

WHERE子句中不能出现聚合函数,如果一定要用到聚合函数来描述条件,则聚合函数用在HAVING子句。出现HAVING子句,在其上面必须出现GROUP BY 子句。

相关文档
最新文档