linux创建mysql视图,MySQL视图入门浅析

一. 什么是视图

视图是一种虚拟存在的表,行和列数据来自,定义视图的查询中使用的表,并且是在使用视图时动态生成的。优势有:

简单: 使用视图的用户完全不需要关心后面对应的表的结构,关联条件,筛选条件。

安全:使用视图的用户只能访问他们被允许查询的结果集。

数据独立: 源表增加列对视图没有影响,源表修改列名,则通过修改视图 对应好源表的列名来解决,不会造成对访问者的影响。

1.1 创建视图的操作

-- 创建视图

CREATE  OR REPLACE VIEW view_city

AS

SELECT * FROM city;

-- 查询视图

SELECT * FROM view_city;

17a2b6b321b55b852690d99062305446.png

1.2 修改视图

-- 修改视图

ALTER VIEW view_city

AS

SELECT  cityname FROM city;

86bd6a65cd6aa861cfd926b4d9439bcb.png

1.3 限制

视图一般只是用来做查询使用,如果要对视图做修改有如下限制不能更新:

包含关键字 聚合函数(sum,min,max,count等),distinct,group by , having,union ,union all。

常量视图。

select 中包含子查询。

jion。

from 一个不能更新的视图。

where 字句的子查询引用了from字句的表。

LOCAL 是只要满足本视图的条件就可以更新, CASCADED 则是必须满足所有针对该视图的所有视图的条件才可以更新, 如果没有明确是LOCAL 还是CASCADED,则默认是CASCADED,由于视图基本不做修改,这里就不在演示。

-- local与CASCADED 语法

CREATE  OR REPLACE VIEW view_city

AS

SELECT * FROM city;

-- with(local | CASCADED)  CHECK OPTION;

1.4  删除视图

drop view view_city;

1.5 查看视图

d317a3714294774d04cf79b1aa032287.png

--  查看视图的定义

SHOW CREATE VIEW view_city

4b355f6daaff15cab1ea9626770a3be7.png

-- 查看视图的定义

SELECT * FROM information_schema.views WHERE table_name = 'view_city'

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值