学习数据库,所以写个博客主要是为了自己加深影响,有错误请大家提出来,相互提高
先来一波百度视图的定义:
视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。
视图特点:
可以简化查询
增加数据安全性
创建视图:
格式:
create 限制(可有可无)view 视图名
as
查询语句
权限(可有可无)
视图名:就是给视图创建一个名字
关键字:
create或者create or replace
如果前面创建不能创建同名的视图
create or replace则如果名字相同则用新表代替旧表
限制:
force 或者noforce
force 当引用基表存在时才创建视图
no force无论引用表是否存在都会创建视图
省略该项时默认为no force
查询语句:
例子
select empno,ename,sal,comm from emp;
如上,emp便是引用表
也是查询语句
empno,ename,sal,comm便是你创建新的视图的列,其中内容来源于emp表
权限:
权限语句在最后
with read only和with check option
with read only表示创建的视图,只能查询
with check option表示创建的视图可以改变。(不推荐)
当省略该选项时,为默认可以修改
实例:
create view financeView
as
select empno,ename,sal,comm from emp;
修改:
视图与表修改的方式是几乎相同的
当视图可以修改时,如果对其进行修改则引用表中数据也会发生相应的改变
但是视图不能对列进行修改,只能对数据进行修改
删除:
当视图删除后,并不会影响引用表
但是此视图作为引用表的视图,同样会删除。