1、操作视图语句:
//view 类型
//user 视图名称
//as 后边写查询语句
(1)创建语句:create view user as select id,name,phone from user_manager;
//user 视图名称
(2)删除语句:drop user;
(3)修改语句:update user;
(4)问题:
如果视图的查询语句是:
create view user as select * from view_user where id >2;
那么添加语句是:insert into user (id,name)value(1,‘用户1’);也是可以添加的,这样就会造成视图失去检索数据的作用。
解决方法:再创建视图的语句最后加入:with check option;如下:
create view user as select * from view_user where id >2 with check option;
这样创建的话,就不可以再往视图里面添加id小于2的语句
2、使用视图的好处:
(1)不暴露数据库字段
(2)如果需要更改数据库字段的话,不用去改程序代码里的sql语句,只需要更改数据库视图的语句,否则,程序里面sql语句过多的话,挨个修改会浪费很多时间。
(3)简化sql语句
注意:视图不会提高sql效率,只是简化sql语句的长短。
适合的应用场景:
oa(办公系统)、erp(企业管理系统)
3、视图不能添加或修改的场景:
(1)视图的查询语句里面包含join,也就是连表查询
(2)视图的查询语句里面包含子查询
(3)有使用聚合函数