MySQL-视图:视图概述、创建、查看、更新、修改、删除
warning:
这篇文章距离上次修改已过192天,其中的内容可能已经有所变动。
MySQL中的视图是一个虚拟表,其内容由查询定义。视图可以包含表的所有行或者特定行。视图可以包含表的所有列或者特定列。视图中的行和列可以被定义为外部表的子集。
- 创建视图
CREATE VIEW view_name AS
SELECT column1, column2,...
FROM table_name
WHERE condition;
例如,创建一个简单的视图,显示employees表中的first\_name和last\_name:
CREATE VIEW employee_names AS
SELECT first_name, last_name
FROM employees;
- 查看视图
DESCRIBE view_name;
例如,查看上述创建的视图:
DESCRIBE employee_names;
- 更新视图
视图的更新依赖于基础表的更新。如果视图定义包含以下类型的操作,则不能进行更新:分组(GROUP BY)、联结(JOIN)、子查询、并且(UNION)、不是全部的列(SELECT * 除外)、DISTINCT、聚合函数(如COUNT()、MIN()、MAX()等)、导出(HAVING)。
如果视图可更新,可以通过以下方式进行更新:
UPDATE view_name
SET column1 = value1, column2 = value2,...
WHERE condition;
例如,更新视图中的数据:
UPDATE employee_names
SET first_name = 'John'
WHERE last_name = 'Doe';
- 修改视图
CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2,...
FROM table_name
WHERE condition;
例如,修改上述创建的视图,增加一个新的列:
CREATE OR REPLACE VIEW employee_names AS
SELECT first_name, last_name, department_id
FROM employees;
- 删除视图
DROP VIEW view_name;
例如,删除上述创建的视图:
DROP VIEW employee_names;
评论已关闭