数据库的视图

时间:2021-09-29
本文章向大家介绍数据库的视图,主要包括数据库的视图使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

一、视图

概述:mysql5.0版本之后主持视图

视图能够方便开发热源对数据进行增删改查等操作

访问视图能够根据相应的权限来限制用户直接访问数据库的数据表

保障数据库的安全

概念:视图可以由数据库中的一张表或者多张表生成,结构与数据表类似

视图中的数据也是由一张表或者多张表的数据组合而成

可以对试图中的数据进行增删改查等操作,也可以修改视图结构

视图不会保障数据,数据真正保存在数据表中

视图与数据表数据同步更新

视图的优点:

操作简单:可以经常使用的查询操作定义为视图

可以使开发人员不用关心

数据表的结构、表与表之间的关联关系、数据表之间的业务逻辑和查询条件

极大的简化开发人员对数据库的操作

数据安全:mysql根据权限将用户对数据的访问限制在某些数据的结果集上,而这些数据的结果集可以使用视图来实现

不必直接查询或操作数据表

保证了数据的安全性

数据独立

视图的结构是创建之初确定的

当数据表的结构变化不会影响视图的结构

如果数据表的字段发送变化,只需要简单修改查询语句

不会影响用户对数据的查询操作

适应灵活多变的需求

当业务需求发送变化,修改数据表的结构工作量较大,可以使用视图来减少改动的工作量

能够分解复杂的查询逻辑:数据库中如果存在复杂的查询逻辑,则可以将问题分解,创建多个视图获取数据,再将多个视图结合起来,完成复杂查询

1.创建视图:create view view_name as select * from user;  as后面考研跟上所有的SQL语句

第一步:创建数据库create database max123

第二步:创建表:create table max123.user(id int);并使用一个数据库

第三步:创建视图:create view v1 as select * from user;

第四步: cd max123  查看ll  -h       v1表只有表结构没有数据 不占用磁盘空间

第五步:登录mysql   select * from v1;有数据

mysql> show tables;
+------------------+
| Tables_in_max123 |
+------------------+
| user |
| v1 |
+------------------+
2 rows in set (0.00 sec)

mysql> desc v1;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
1 row in set (0.00 sec)

查看视图show create view v1\G      

select * from information_schema.views limit 5\G;

修改视图结构第一步:create or replace view v1 as select name,shell from user;

第二步:desc v1 查看表结构

第三步:select * from v1;

修改表中数据和视图中的数据的变化:修改表数据和修改视图数据表中数据和视图表中数据都会改变

删除视图 drop view

原文地址:https://www.cnblogs.com/cnds168/p/15353838.html