简单通过一张图片来了解关系型数据库的视图:
视图(View),又名有目的的表(Intentional Relation)是整个关系型数据库最方便使用的工具了。其实View就是由程序员临时创建的一个临时表,但这个临时表不会和子查询一样用完就没了,而可以使用MATERIALIZED关键字让这个表一直存在,因此可以被别的查询使用。另外,视图可以在数据库和用户之间形成一层indirection,从而防止用户直接更改数据。
视图:虚拟表,和普通表一样使用,mysql5.1版本的新特性,是通过表动态生成的数据,比如我们需要做一些复杂的查询,我们可以提前就把需要的数据找出来存在一张临时表中,直接取用,而不用每次都去查询,去使用负责的sql语句。可以重复使用。
官方定义:一种虚拟存在的表,行和列的数据来自自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果。
应用场景:1、多个地方用到了同样的查询结果;2、该查询结果使用的sql语句较为复杂。
创建视图的语法:
create view 视图名
as
sql查询语句;
视图的作用:
1、重用sql语句
2、简化了sql操作,不必知道它的查询细节(原来我需要写好长的子查询语句,现在一个查询就可以了)
3、保护数据,提高安全性