视图的含义和作用
方便用户对数据处理,是一个虚拟的表,其中不储存数据,使用时,直接从原表格上查询数据,因此,视图的数据可以来源于多个表格。
作用:
1. 使操作简单化
所见即所需,可以为经常需要查询的数据建立一个视图,方便用户操作。
2. 增加数据的安全性能
数据库无法将用户的操作权限限制在特定行与列,使用视图可以解决这个问题。确保敏感信息不被没有权限的人看到。
3. 提高表的逻辑独立性
视图的创建
CREATE [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}]
VIEW 视图名 [(属性清单)]
AS SELECT 语句
[WITH [CASCADED | LOCAL]CHECK OPTION];
查看视图
DESC 视图名;//DESCRIBE 视图名;
SHOW TABLE STATUS LIKE '视图名';
SHOW CREATE VIEW 视图名;
SELECT * FROM INFORMATION_SCHEMA.VIEWS;
修改视图
CREATE OR REPLACE [ALGORITHM={UNDEFINED|MERGE| TEMPTABLE}]
VIEW 视图名 [(属性清单)]
AS SELECT 语句
[WITH [CASCADED | LOCAL]CHECK OPTION];
存在时修改,不存在时创建。
ALTER [ALGORITHM={UNDEFINED|MERGE| TEMPTABLE}]
VIEW 视图名 [(属性清单)]
AS SELECT 语句
[WITH [CASCADED | LOCAL]CHECK OPTION];
更新视图
更新视图指通过视图来 插入(INSERT) 更新(UPDATE ) 删除(DELETE)
下列情况下不可以更新视图:
1. 视图中包括SUM() COUNT() MAX() MIN()等函数
2. 试图中包括UNION , UNION ALL ,DISTINCT ,GROUP BY和 HAVIG等关键字
3. 常量视图
4. 视图中的SELECT 语句嵌套。
删除视图
DROP VIEW [IF EXISTS] 视图名列表 [RESTRICT | CASCADE]