数据库内部用于存储、管理,维护数据的一批内部对象。
一个视图是一个或多个表中的数据的一种定制的表示。
用一个查询语句定义,可认为是一个存储的查询或一个虚表。用于产生视图的表叫做该视图的基表,一个视图可以从另一个视图中产生。
视图的定义存在数据库中,与此定义相关的数据并没有再存一份与数据库中,通过视图看到的数据存放在基表中。
视图的特点及语法:
create [or replace] view 视图名 as --or replace 遇到同名的会替换,因为不修改数据,不会有什么大的影响
select ... from ... where ...
[with read only] --只读视图,我们对试图的使用应该仅限于读
实际开发中对于视图的目标功能的设计应该仅限于数据的查询,不应该依赖视图的增、删、改、查等其他操作。
增删改应在基表中进行。
对视图的访问与对基本表的访问几乎是相同的:desc 视图名; select ... from ... 视图名 where ...;
删除 drop view 视图名;不存在修改,直接create or replace就可以。
视图创建:
create or replace view sv as
select sid,sname,sage from student
where sage>=19
with read only;
使用:
select * from sv;
使用:
select * from sv
where sid='s0002';
视图访问的练习:
OMT图:用office的viso画。
视图的作用:
看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。
通过视图用户只能查询到他们所能见到的数据,提高安全性。(例:讲一个表中可对外的记录的建立一个视图,将视图对外,表不对外,实现将表中部分记录对外)