一、什么是视图
视图是存放数据的一个接口,也可以说是虚拟表,这些数据可以是从一个或几个基表(视图)的数据,也可是用户自己定义的数据,其实视图里面不存放数据,数据还是存在基表里面,基表数据发生变化,视图里的数据也随之变化,视图里数据变化,基表也会变化。
二、视图的作用
1. 视图可以让查询变得更方便(复杂的SQL语句变得很简单)
2. 保护数据库的重要数据, 给不同的人看不同的数据
三、创建视图
create [or replace] [algorithm={merge|temptable|undefined}]
view view_name [(column_list)]
as select_statement
[with [cascaded|local] check option]
视图有三种类型
Merge: 会将引用视图的语句的文本与视图定义结合起来,使用得视图定义的某一部分取代语句的对应部分
temptable:视图的结果将被置于临时表中,然后使用它执行语句。
undefined:MySQL将选择所要使用的算法。如果可能,它倾向于MERGE而不是TEMPTABLE,这是因为MERGE通常更有效,而且如果使用了临时表,视图是不可更新
当用户创建视图时,mysql默认使用一种undefine的处理算法,就是会自动在合并和临时表内进行选择。
with local check option [local]只要满足本视图的条件就可以更新
with cascaded check option [cascaded]则是必须满足所有针对视图的条件,才可以更新
四.视图的操作
同表操作
以上就介绍了MySQL视图,包括了Mysql方面的内容,希望对PHP教程有兴趣的朋友有所帮助。