一、定义
视图:指计算机数据库中的一个临时虚拟表,其内容由查询定义;同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。
二、优点
1. 优点:
a. 无需保存数据,可以节省存储设备的容量;
b. 将频繁使用的SELECT 语句保存成视图,不用每次都重新书写。特别是在进行汇总以及复杂的查询条件导致SELECT 语句非常庞大时可以大大提高效率;
c. 视图中的数据会随着原表的变化自动更新,可以保证数据的最新状态;
d. mysql允许基于其他视图创建视图;
2. 缺点:
a. 定义视图时不能使用ORDER BY子句;
b. 无法将视图的更改反映到原表中的;记住:视图是一张衍生的表,原表改动,视图会随着变动,反之,视图无法改变原表,所以视图无法插入,删除或 者更新数据;
注: 应该将经常使用的SELECT语句做成视图。
三、示例:
1. 数据库中现有两张表Employee_China和Employ_USA, 如下:


2.创建视图
CREATE VIEW employee AS SELECT FistName, lastName, Age, City FROM Employee_China UNION SELECT FistName, lastName, Age, City FROM Employee_USA GROUP BY age
创建视图成功返回结果:

3.查看视图字段
DESCRIBE employee;
运行结果:

4. 查看数据库中有所有的视图:
show table status where comment='view';
运行结果:

注:由于这张表太长,只截取了一半;
5. 查看数据库中所有视图表
show full tables where Table_type = "VIEW";
运行结果:

6. 删除视图
Drop VIEW employee;
四、视图的使用
1. 应该尽量将频繁使用的查询作为视图;
2. 视图可以和表一样的使用和操作,不过试图是一张临时虚表;
本文深入解析了数据库视图的概念,探讨了其在节省存储、提高查询效率和保持数据实时更新方面的优势,同时指出了不能使用ORDER BY及无法直接修改原表的限制。通过创建视图的实例,展示了如何整合多表数据,简化复杂查询。
1372

被折叠的 条评论
为什么被折叠?



