视图是一个只有结构没有数据的虚拟表,视图结构不是我们自定义创建产生的而是通过对应真实基表产生的。【视图是一个只有结构没有数据的表,为什么在视图中可以看到有记录】
一、视图的作用
1、简单性:视图可以节省SQL语句,将一条复杂的查询语句使用视图进行保存: 以后可以直接对视图进行操作。
2、数据安全: 视图操作是主要针对查询的, 如果对视图结构进行处理(删除), 不会影响基表数据(相对安全)。
3、安全性:视图往往是在大项目中使用, 而且是多系统使用: 可以对外提供有用的数据, 但是隐藏关键(无用)的数据,保证了数据安全。
4、视图可以对外提供友好型: 不同的视图提供不同的数据, 对外好像专门设计。
5、视图可以更好(容易)的进行权限控制。
二、视图操作
视图可以进行数据写操作但也有一些限制,因为视图是一张表,所以视图也有增、删、改、查的功能。
1、新增数据:数据新增就是直接对视图进行数据新增。
1)多表视图不能新增数据。
2)可以向单表视图插入数据: 但是视图中包含的字段必须有基表中所有不能为空(或者没有默认值)字段。
3)视图是可以向基表插入数据的。
2、删除数据:数据删除就是直接对视图进行数据删除。
1)多表视图不能删除数据。
2)单表视图可以删除数据。
3、更新数据:数据更新就是直接对视图进行数据更新。
单表视图和多表示视图都可以更新数据。