数据库基本操作(视图)
##定义:
视图是一个虚拟表,是从数据库中一个或者多个表中导出来的表。视图还可以从已经存在的视图的基础上定义
##视图的作用
1)简单性:封装复杂的sql语句
2)安全性:隐藏某些字段,保存敏感信息
3)逻辑数据独立性
##创建视图:CREATE VIEW 视图名 AS ;
例子:create view view_sellSet as
select c.c_name as 商品名称,c.c_madein as 商品产地,ct.ct_name as 商品类型,c.c_outprice as 商品售价
from commodity as c inner join commoditytype as ct on c.c_type=ct.ct_id where c.c_outprice is not null;
注意:视图名命名规范:view_别名/数字序号
##对视图的操作和对实表的操作相同:
1)视图的修改会直接影响实表的数据(update,select)
update view_sellSet set 商品售价 100 where 商品名称=‘红楼梦’;
注意: 对视图进行操作的时候,列名为生成视图时候给定的列名称(as后面的字段)
2)视图和实表一样,存储在硬盘中(不过视图存储的仅仅是映射,不是具体的表)
##删除视图:(删除视图时必须拥有DROP权限)
DROP VIEW [IF EXISTS] 视图名[,视图名2]…;
##查询视图信息:
1)DESCRIBE语句查看视图基本信息(描述行列的信息):
DESCRIBE 视图名;
2)SHOW TABLE STATUS语句查看视图基本信息
1)SHOW TABLE STATUS:查看所有表格+视图的详细信息
2)SHOW TABLE STATUS LIKE '视图名';查看特定视图的信息
3)SHOW CREATE VIEW语句查看视图详细信息:
SHOW CREATE VIEW/table/database 视图名;
4)在VIEWS表中查看视图详细信息:
在MYSQL中,information_schema数据库下的view表中存储了所有视图的定义。
通过对VIEW表的查询,可以查看数据库中所有视图的详细信息。
select * from information_schema.views;