MySQL的视图:
视图(view)
1、什么是视图?
站在不同的角度去看待数据。(同一张表的数据,通过不同的角度去看待)
2、怎么去创建视图?怎么删除视图?
创建视图:create view myview as select empno, ename from emp;
删除视图:drop view myview;
注意:只有DQL(select查询)语句才能以视图对象的方式创建出来。
3、对视图进行增删改查,会影响到原表数据。(通过视图影响表中数据,并不是通过操作数据影响)
注意:可以对视图进行CRUD(增删改查)操作,并会影响原表数据。
4、面向视图操作
创建视图:create view myview as select empno, ename from emp;
查询视图:select * from myview; // 查询到的数据相当于select empno, ename from emp;
为了不影响原表,这里创建一个表来测试:
创建表:create table emp1 as select * from emp;
创建视图:create view myview1 as select empno, ename, sal from emp1;
更新视图:update myview1 set ename = ‘haha’, sal = 1000 where empno = 7369;
查询表:select * from emp1; // 会发现表中数据也会跟着改
删除操作:delete from myview1 where empno = 7369;
查询表:select * from emp1; // 发现表中数据empno为7369的记录被删除了
注意:对视图进行CRUD操作,并不会提高执行效率,底层还是对原表进行操作。
5、视图的作用
视图可以隐藏表的实现细节。
保密级别较高的系统,数据库只对外提供相关的视图,程序员只对视图进行CRUD操作。