MySQL学习笔记4
数据库视图
视图的含义:
视图是一个虚拟表,是从数据库中一个或者多个表中导出来的表。视图还可以从已存在的视图的基础上定义。
图解
视图的作用
- 对复杂的sql语句进行封装
- 保护敏感信息
视图的特性
- 简单性
- 安全性
- 逻辑数据独立性
创建视图
语法
CREATE VIEW 视图名 AS <select statement>
示例
CREATE VIEW 视图名 AS select 字段名1,字段名2,字段名N from 表名
查看试图
DESCRIBE语句查看视图的基本信息
- DESCRIBE 视图名;
SHOW TABLE STATUS语句查看视图基本信息
- SHOW TABLE STATUS LIKE 视图名;
SHOW CREATE VIEW语句查看视图详细信息
- SHOW CREATE VIEW 视图名;
在VIEWS表中查看视图详细信息
在MySQL中,information_schema数据库下的view表中存储了所有视图的定义。通过对VIEW表的查询,可以查看数据库中所有视图的详细信息。
- select * from information_schema.views;
修改视图
ALTER 语句修改试图
ALTER VIEW 视图名 AS <select statement>;
更新视图
更新试图是指通过插入、更新、删除表中的数据,因为视图是一个虚拟表,其中没有数据。通过视图更新的时候都是转到基本表进行更新的,如果对视图增加或者删除记录,实际上是对其基本表增加或者删除记录。
删除视图
删除视图时必须拥有DROP权限
DROP VIEW [IF EXISTS]视图名1,视图名2...;
自己实践
create view view_1 as
select c.c_name as 商品名称,c.c_madein as 商品产地,c.c_outprice as 商品售价,c.c_num as 商品库存,ct.ct_name as 商 品种类,c.c_id as 商品ID
from commoditytype as ct inner join commodity as c
on ct.ct_id = c.c_type and c.c_outprice is not null;
create