第一部分:什么视图?
视图也就是view,是一个虚拟的表,拥有和数据库表一样的操作方式,其中只是提取你想要的数据显示,数据是当前相关数据表中的最新数据,视图是数据库的一个对象,数据库只存储视图的定义,不存储视图中的数据(视图中的数据来自其他库表),比如
用户表,tb_user,有字段id,身份证号,姓名,地址,联系电话,
表中数据:
其中地址和和身份证号和电话是很敏感的,假设有一个需求,
只需要用户名和电话(假设是这样),
方式一:直接查询tb_user表的完整信息,然后在在业务代码中将其他数据屏蔽掉
方式二:sql 中只选出用户名和电话这两个字段
方式三:建立视图,user_view,其中包含 (id,name,phone)这三个字段(建立使徒的方式很简单,用navicat,操作如下)
步骤1,新建查询:select id,name,phone from tb_user;
步骤2,选中视图(图中是连接的sqlserver,这个不影响),新建视图,选择定义(当然也可以选择视图创建工具,但是 多表查询时好像不太好使,可能出不了数据(我比较菜,就选择定义了)),将步骤1中的那句能出数 据的 sql 粘贴到定义 下面的那个大框中
点击预览,可以看到这个视图的数据
选择保存,命名为user_view
现在对视图进行查询,select * from user_view;
第二部分:视图优缺点?
参考链接(该链接还包含事物,存储过程,函数,索引等见解,很厉害,本文涉及到的部分已摘下)
优点: