MySQL视图操作

浪子不回头ぞ 提交于 2019-11-26 16:14:25

MySQL视图:

MySQL视图是一个虚拟表,其内容由查询定义。

视图不是表,不直接存储数据,是一张虚拟的表; 
一般情况下,在创建有限条件限制的视图时,加上“WITH CHECK OPTION”命令;

作用:简单、安全、简化操作、数据独立

提高了重用性;
对数据库重构,却不影响程序的运行;
保护数据;提高了安全性能,可以对不同的用户设定不同的视图;
让数据更清晰。

视图的规则和限制

1 - 与表一样,视图必须唯一命名(不能给视图取与别的视图或表相同的名字)。

2 - 对于可以创建的视图数目没有限制。

3 - 为了创建视图,必须具有足够的访问权限。

3 - 视图可以嵌套,既可以利用其它视图中检索数据的查询来构造一个视图。

5 - ORDER BY可以用在视图中,但是如果使用该视图的时候也有ORDER BY,那么视图中的ORDER BY将被覆盖。

6 - 视图不能索引,也不能有关联的触发器或默认值。

7 - 视图可以和表一起使用。

视图操作:

-- 创建视图:
CREATE VIEW 视图名称(列名?) AS SELECT [列名,+] FROM [数据表,+];-- AS后面加查询语句

-- 视图查看:
SHOW TABLE STATUS LIKE ‘数据表’;-- 获取表信息
SELECT * FROM 视图名称;
SHOW CREATE VIEW 视图名称;-- 查看视图创建语句;
[DESCRIBE 或者 DESC] 视图名称;-- 查看视图定义
SHOW FIELDS FROM 视图名称;-- 查看视图定义

-- 视图与数据变更:
INSER INTO  视图名称[列名...] VALUES(行数据,+);-- 实际上修改的不是视图,而是源表

-- 删除视图:
DROP VIEW 视图名称;

-- 修改视图:
CREATE OR REPLACE VIEW 视图名称[列名...] AS SELECT [列名,+] FROM [数据表,+];

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!