1、什么是视图
视图是从一个或多个表中导出来的表,是一种虚拟存在的表。视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样用户可以不看整个数据库表中的数据,而只关心对自己有用的数据。视图可以使用户的操作更方便,而且可以保障数据库系统的安全性。
虽然视图可以被看成是一种虚拟表,但是其物理上是不存在的,即MySQL并没有专门的位置为视图存储数据。根据视图的概念可以发现其数据来源于查询语句
2、创建视图
CREATE[OR REPLACE] VIEW viewname[(columnlist)] AS SELECT statement
给下图创建视图
create view view_student as select id,name ,class_id,sex from student;
通过视图检索数据
select * from 视图名
修改视图数据
update view_student set name='小王王' where name='小王';
给多表创建视图
create view view_student_teacher
as select class.id as teacher_id,teacher,class,student.id,student.name,sex
from class
left join student on class.id=student.class_id;
3、查看视图
4、更新视图数据
更新视图是指通过视图来插入(INSERT)、更新(UPDATE)和删除(DELETE)表中的数据。
update view_student set name='小王' where name='小王王';
5、修改视图
修改视图是指修改数据库中存在的视图,当基本表的某些字段发生变化的时候,可以通过修改视图来保持与基本表的一致性。ALTER语句来修改视图。
注意,当真实表中修改了某个存在视图中的字段时,这个视图也需要跟着变,否则会变成无效的视图
ALTER VIEW viewname[columnlist] AS SELECT statement
6、删除视图
DROP VIEW viewname [,viewnamen];