什么是视图?
视图是基于SQL语句的结果集的可视化表,视图包含行和列,就像一个真实的表。
视图中的字段就是来自一个或多个数据库中的真实的表中的字段。
我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。
视图也可以理解为像Java中给一段代码起个名字(方法),执行方法会出现结果,执行视图也可以出结果
视图仅仅是展示数据的,里面只有查询语句,而且只有一个,只是把SQL语句封装了起来,提高了代码的复用性
为什么要使用视图?
1.提高代码复用性,简化操作,提高工作效率
2.保护数据,可以授予用户访问表的特定部分的权限,而不是整个表的访问权限
3.可以限制用户只能通过视图检索数据,这样就可以对最终用户屏蔽建表时底层的基表
4.可以根据自己的需要从多张表中抽取出自己想要的数据,以便自己的后续操作
怎么使用视图?
创建视图
首先要具有足够的访问权限,这些权限通常由数据库管理人员授予 grant create synonym to username;
创建视图 create [or replace] [force | noforce] view view_name as select ... [with read only constraint];
注意:视图是展示数据,里面只有查询语句,而且只有一个
语法解释
or replace: 如果视图已经存在,则替换旧视图
force : 即使基表不存在,也可以创建该视图,但是该视图不能正常使用,当基表创建成功后,视图才能正常使用
noforce: 如果基表不存在,无法创建视图,该项是默认选项
with read only: 只读视图,不能进行增删改等操作,一般不通过视图对表中的数据进行增删改操作。
删除视图
drop view view_name 这是删除整个视图,不会对基表数据造成影响
注意: 对视图中的内容做修改的话也会对基表造成影响
修改视图
修改视图数据不像修改数据库那样可以直接修改,要修改的话只能新建一个 ,可以根据需求使用上面的关键字
总结
视图只是展示数据的,是根据其它基表创建的,是为了方便操作才创建的视图,就是一真实的
表修改视图里的数据也会对基表数据做出改变,而删除视图则不会对基表数据有影响,视图的
出现就是为了方便快捷安全的操作数据库的。