数据库 视图

什么是视图呢?

视图是虚表,所以不储存视图对应的数据,数据仍然存在在原来的基本表。so 视图会随着基本表的更新而自动更新哟。


创建视图

create view 视图名[(属性列名1,属性列名2)]  as 子查询  [with check option]

注:with check option 对视图进行操作时需要满足 视图定义时子查询的条件表达式

以下几种情况属性列名不能够省略

1、select 语句中包含聚集函数或表达式

2、多表连接时,不同的表存在同名


例: 建立一个视图,使其包含计算机专业的读者信息

create view reader_cp 

as select *from reader

where respecialty='CP'

with check option (以后对该视图进行修改的时候,专业只能够是 计算机 )


删除视图  drop view  视图名 [cascade]    

cascade 关联删除 相关的视图一并删除

例:删除 reader_cp   视图

drop  view reader_cp


查询视图

查询计算机专业年龄 小于19岁的读者信息

select * 

from reader_cp

where rage<19

注:1、不能够使用 order by 

        2、视图可以和基本表进行连接



更新视图

如果视图可更新 需满足一下条件:  视图的每一行需对应基本表中的一行,视图中的一列需对应基本表中的一列

插入数据

insert into reader_cp

values ('201417689','李润泽',‘男’,20);


修改数据 

例 :将读者编号 201417689 的读者年龄修改 成19岁

update reader_cp

set rage='19'

where rno='201417689'

删除数据

delect from reader_cp

where rno='201417689'



你可能感兴趣的:(数据库)