MySQL基础-视图

视图

定义本质就是一张虚拟表。从一个或多个表中结合查询出来的结果集,作用和真实表一样。可以使用SELECT 语句查询数据,也可以使用INSERT,UPDATE,DELETE 来修改数据。

优点:1) 简单化,数据所见即所得;2) 安全性,用户只能查询或修改他们所能见到得到的数据;3) 逻辑独立性,可以屏蔽真实表结构变化带来的影响

缺点:1) 性能相对较差,简单的查询也会变得稍显复杂;2) 修改不方便,特别是复杂的聚合视图基本无法修改

特别强调

  • 查看存储文件,可以发现,视图只有表结构文件,没有表数据文件
  • 视图通常是用于查询,尽量不要修改视图中的数据

视图创建示例

-- 1.创建视图语法
-- 语法:create view view_name as sql语句;
create view v_user as select u.username,d.depname from user as u inner join dep d on u.pid = d.id;

-- 2.使用视图
-- 查询 语法:select * from 视图名;
select * from v_user;

-- 3.删除视图
-- 删除语法:drop view 视图名;
drop view v_user;

思考:实际开发过程中,视图的使用频率高吗?

在实际开发过程中,一般不会使用视图。假设我们在项目中使用了大量的视图,后期我们想要扩展某个功能的时候,这个功能恰巧又需要对视图进行修改,那么首先需要在MySQL中将视图修改,然后再去应用程序中修改对应的sql语句,这就涉及到跨部门沟通问题
因此,MySQL中虽然有视图这个功能,但我们通常不会经常使用,几乎都是通过重新修改应用程序中的sql语句来扩展功能

posted @ 2019-12-17 16:52  格桑_哈哈  阅读(207)  评论(0编辑  收藏  举报