• MySql(19)视图


    Mysql专栏入口

    链接:https://pan.baidu.com/s/1zAhDUNv-yuJiWmaFLvTk4w
    提取码:ttst
    提取码:ttst
    专栏中有mysql的导入导出,里面有教如何导入

    一、视图的理解

    • 视图是一种虚拟表 ,本身是不具有数据 的,占用很少的内存空间,它是 SQL 中的一个重要概念。视图建立在已有表的基础上,视图赖以建立的这些表称为基表。可以看做事存储起来的select语句
    • 针对视图做DML操作,会影响到对应的基表中的数据。反之亦然。
    • 视图本身的删除不会导致基表中数据的删除。
    • 视图优点:简化查询,控制数据的访问。

    二、创建视图

    CREATE VIEW 视图名称
    AS 查询语句
    
    #	创建视图
    create view ev
    as
    SELECT employee_id,first_name,last_name,email FROM employees
    
    # 查询视图
    SELECT * from ev
    
    # 修改视图数据	基表数据也会对应修改
    UPDATE ev set email = 'SKINGE' WHERE employee_id = 100
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    三、总结

    优点:
    1.操作简单
    将经常使用的查询操作定义为视图,可以使开发人员不需要关心视图对应的数据表的结构、表与表之间的关联关系,也不需要关心数据表之间的业务逻辑和查询条件,而只需要简单地操作视图即可,极大简化了开发人员对数据库的操作。

    2.减少数据冗余
    视图跟实际数据表不一样,它存储的是查询语句。所以,在使用的时候,我们要通过定义视图的查询语句来获取结果集。而视图本身不存储数据,不占用数据存储的资源,减少了数据冗余。

    3.数据安全
    MySQL将用户对数据的 访问限制在某些数据的结果集上,而这些数据的结果集可以使用视图来实现。用户不必直接查询或操作数据表。这也可以理解为视图具有隔离性视图相当于在用户和实际的数据表之间加了一层虚拟表。同时,MySQL可以根据权限将用户对数据的访问限制在某些视图上,用户不需要查询数据表,可以直接通过视图获取数据表中的信息。这在一定程度上保障了数据表中数据的安全性。

    4.适应灵活多变的需求
    当业务系统的需求发生变化后,如果需要改动数据表的结构,则工作量相对较大,可以使用视图来减少改动的工作量。这种方式在实际工作中使用得比较多。

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

  • 相关阅读:
    在学习编程的过程中,我会记录下以下内容:
    ​MATLAB差影法人体姿态检测系统
    爱思唯尔的ESWA 投稿和返修的问题总结
    SpringBoot 22 Swagger配置扫描接口和开关、过滤url、根据环境决定使用
    进程的状态
    17 | Spark中的map、flatMap、mapToPair mapvalues 的区别
    无线通信网络
    上市企业管理层短视,新的视角,整理好的面板数据,stata或excel版本
    Docker安装 MySQL8.0.33
    基于秃鹰优化的BP神经网络(分类应用) - 附代码
  • 原文地址:https://blog.csdn.net/gtd54789/article/details/126559524