在本教程中,您将了解一个叫作数据库视图的新数据库对象。 我们将讨论使用数据库视图的优缺点。

数据库视图是虚拟表或逻辑表,它被定义为具有连接的SQL SELECT查询语句。 因为数据库视图与数据库表类似,它由行和列组成,因此可以根据数据库表查询数据。 大多数数据库管理系统(包括MySQL)允许您通过具有一些先决条件的数据库视图来更新基础表中的数据。

数据库视图是动态的,因为它与物理模式无关。数据库系统将数据库视图存储为具有连接的SQL SELECT语句。当表的数据发生变化时,视图也反映了这些数据的变化。

数据库视图的优点

以下是使用数据库视图的优点 -

数据库视图允许简化复杂查询:数据库视图由与许多基础表相关联的SQL语句定义。 您可以使用数据库视图来隐藏最终用户和外部应用程序的基础表的复杂性。 通过数据库视图,您只需使用简单的SQL语句,而不是使用具有多个连接的复杂的SQL语句。

数据库视图有助于限制对特定用户的数据访问。 您可能不希望所有用户都可以查询敏感数据的子集。可以使用数据库视图将非敏感数据仅显示给特定用户组。

数据库视图提供额外的安全层。 安全是任何关系数据库管理系统的重要组成部分。 数据库视图为数据库管理系统提供了额外的安全性。 数据库视图允许您创建只读视图,以将只读数据公开给特定用户。 用户只能以只读视图检索数据,但无法更新。

数据库视图启用计算列。 数据库表不应该具有计算列,但数据库视图可以这样。 假设在orderDetails表中有quantityOrder(产品的数量)和priceEach(产品的价格)列。 但是,orderDetails表没有一个列用来存储订单的每个订单项的总销售额。如果有,数据库模式不是一个好的设计。 在这种情况下,您可以创建一个名为total的计算列,该列是quantityOrder和priceEach的乘积,以表示计算结果。当您从数据库视图中查询数据时,计算列的数据将随机计算产生。

数据库视图实现向后兼容。 假设你有一个中央数据库,许多应用程序正在使用它。 有一天,您决定重新设计数据库以适应新的业务需求。删除一些表并创建新的表,并且不希望更改影响其他应用程序。在这种情况下,可以创建与将要删除的旧表相同的模式的数据库视图。

数据库视图的缺点

除了上面的优点,使用数据库视图有几个缺点:

性能:从数据库视图查询数据可能会很慢,特别是如果视图是基于其他视图创建的。

表依赖关系:将根据数据库的基础表创建一个视图。每当更改与其相关联的表的结构时,都必须更改视图。

在本教程中,您已经了解了数据库视图是什么。我们还介绍了使用数据库视图的优缺点,以便您可以在数据库设计中有效地应用数据库视图。

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

mysql 视图优势_MySQL视图简介及优缺点相关推荐

  1. mysql 视图 教程_MySQL视图简介及基本操作教程

    前言 视图是数据库系统中一种非常有用的数据库对象.MySQL 5.0 之后的版本添加了对视图的支持. 认识视图 视图是一个虚拟表,其内容由查询定义.同真实表一样,视图包含一系列带有名称的列和行数据,但 ...

  2. mysql视图登录_mysql视图

    mysql视图机制 什么是视图 视图是一张虚拟的表,为什么是虚拟呢?因为视图与数据库中存在的表不太一样,前面我们创建的4张表都是包含数据的, 如用户信息,订单信息等,而视图则是不包含数据的,下面通过一 ...

  3. mysql 视图用户_MySQL视图,存储过程,用户管理

    1. 视图 一张虚拟表,就是将一个经常被使用的查询作为一个虚拟表,开发者查询的时候不需要再次书写SQL,而是直接调用对应的视图就可,调用视图以后MySQL会执行这个查询SQL. # 创建视图 crea ...

  4. mysql视图存储_Mysql 视图、存储过程以及权限控制

    导读: 该文章为视图.存储过程.用户权限练习: 如果有不对的地方欢迎指出与补充: 该基础练习基于MySQL5.0以上: 语句格式: 1. 视图格式: create view view_name[列名, ...

  5. mysql视图应用_MySQL视图的概念与实际应用

    以下的文章主要是对MySQL视图的描述,其中包括MySQ视图L概述,以及创建MySQL视图-create view与修改MySQL视图--alter view等相关内容的具体描述,以下就是文章的具体内 ...

  6. mysql 视图 中文_Mysql视图-WEB资讯专栏-DMOZ中文网站分类目录-免费收录各类优秀网站的中文网站目录....

    1.初识视图 1.视图的概念和作用 什么是视图:是从一个或多个表中导出来的表,它是一种虚拟存在的表,表的结构和数据都依赖于基本表. 作用: 简化查询语句:简化用户的查询操作,使 1.初识视图 1.视图 ...

  7. mysql 视图 排序_MySQL 视图

    视图(view): 什么是视图: 视图就是将查询的结果集展示出来,视图就是一张表 为什么需要视图: 首先,视图并不能加快查询速度,因为视图中本身不存储数据 视图仅仅是村粗再数据字典中的一个定义,同时视 ...

  8. mysql视图参数_MySQL视图概述

    1.介绍 在传统关系型数据库里,视图有时也被称作虚表,是基于特定SQL结果集的虚拟数据表.在有些场合会变得很方便,例如:原有系统重构,旧的数据表A和B已经被拆分和合并到数据表C.D.F里面,为了实现平 ...

  9. mysql 视图查询_MySQL视图复杂查询详解

    内容大纲:什么是视图查询 子查询 标量子查询 关联子查询 如何用SQL解决业务问题 各种函数 总结:知识点图解 视图什么是视图 视图存放的是SQL语句,而数据库表存放的是数据,使用视图时,会运行视图里 ...

最新文章

  1. Robot framework 二次开发笔记
  2. python编程难吗-都说python很简单 真的很好学么?
  3. ssm之九 批量导入excel到数据库
  4. hdfs如何查找指定目录是否文件_在shell中如何判断HDFS中的文件目录是否存在
  5. 优秀的软件企业为何倒下?
  6. 嵌入式 linux usb转串口,Linux下,USB转串口问题
  7. arp包多久发一次_多久洗一次头发合适?洗头越频繁,掉的头发越多?
  8. AppBoxPro - 细粒度通用权限管理框架(可控制表格行内按钮)源码提供下载
  9. matepad和鸿蒙,上手华为新 MatePad Pro :搭载鸿蒙系统后,生产力有何不同?
  10. 开源框架 Apache Struts 2漏洞的 PoC 已公开
  11. 链表简介(二)——在单向链表中插入节点
  12. BrightHouse存储引擎
  13. 【免费模版分享】任务管理移动端Axure原型模板
  14. 居然可以一键删除微博内容
  15. 修改Android手机的分辨率和屏幕密度
  16. 谦虚的向大家问个技术问题,树型结构的排序问题
  17. 为什么安装好mysql打不开_MySQL安装完成之后怎么启动? mysql安装完成后怎么
  18. 使用pyecharts遇到的坑(去掉地图标识小红点)!
  19. 【冬瓜哥论文】原子写,什么鬼?!
  20. 黑客工具之AppScan下载安装,超详细使用教程

热门文章

  1. 初窥Linux神秘面纱(叁):基本指令讲解(下)及疑难解惑(精)
  2. 多元函数微分中的偏导、导数的一些问题
  3. 开发术语 中英文对照
  4. Ubuntu 20.04 在线升级node.js版本
  5. MEXGroup:美联储利率决议在即,市场变得谨慎
  6. TTCAN搬砖式介绍
  7. 杭电acm 1880魔咒词典(水题)
  8. 【英语:基础进阶_新闻美剧听说】G4.听力进阶—如何理解英美剧中的文化梗
  9. Ubuntu18.04安装微信(亲测有效)转载,同样亲测好用
  10. 【Apache之 Karaf 介绍】