MySql_笔记:
一、视图(view)
定义:
一个或者多个数据表里的数据的逻辑显示,视图并不存储数据。
- 视图可以理解为一个虚拟的表,本身是不存储数据的,本质是存储起来的Select语句。
为什么使用视图:
主要
是为了控制权限,给相关人员展示相关数据,但是相关人员可以通过视图修改相关数据。
- 视图本身的删除,不会导致基表中数据的删除。
- 针对于小型项目,不推荐使用视图,针对于大型项目,可以考虑使用视图。
1.视图的语法:
CREATE (OR REPLACE)
[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW 视图名称 [{字段列表}]
AS 查询语句
[WITH [CASCADED|LOCAL] CHECK OPTION]
2.复制表
CREATE TABLE EMPS AS SELECT * FROM Atable.tablename
/* 不能复制外连接什么的 */
3.视图的特点
- 视图可以重复创建视图。
- 视图主要是给别人查询的,建议不要给修改的功能。
- 更新基表的数据,会导致视图的数据修改
- 一般情况下,更新视图的数据,也会导致基表的数据修改
- 特殊情况下,如果视图的数据是基表没有的,就无法更新(更新失败)
4.查看视图
- 查看视图:SHOW TABLES;
- 查看视图的结构:DESCRIBE TABLE;
- 查看视图的属性信息:SHOW TABLE STATUS LIKE “TABLE”;
- 查看视图的详细定义信息:SHOW CREATE VIEW TABLE;
5.删除视图
DROP VIEW IF EXISFS TABLE;