mysql数据库之视图

news2024/12/28 20:54:05

视图(view)是一种虚拟的存在,视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。

通俗的讲,视图之保存了查询的sql逻辑,不保存查询结果,所以我们在创建视图的时候,主要的工作就落在创建这条sql查询语句上。

一、视图的操作语法。

1、创建视图。

create [or replace] view 视图名称[(列名列表)] as select语句 [with[cascaed | local] check option]

示例:

create or replace view stu_v)_1 as select id,name from student where id <= 10;

2、查询视图。

#查看创建视图语句
show create view 视图名称;
#查看视图数据
select * from 视图名称......;

示例

#查看创建视图语句
show create view stu_V_1;
#查看视图数据
select * from stu_V_1 where id < 3;

3、修改视图。

方式一:

create [or replace] view 视图名称[(列名列表)] as select语句 [with[cascaed | local] check option]

  方式二:

alter  view 视图名称[(列名列表)] as select语句 [with[cascaed | local] check option]

 

 4、删除。

drop view [if exists] 视图名称 [,视图名称]...

二、视图的检查选项。

1、cascaded

基于一个视图去创建另一个视图,加上with cascaded option判断两个条件。

第三个视图不加判定条件,会往前面找。

 

 当使用with check option子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如插入、更新、删除,以使其符号视图的定义。MySQL允许基于另一个视图创建视图,它还会检查依赖视图中的规则以保持一致性。为了确定检查的范围,mysql提供了两个选项:cascaded和local,默认值为cascaded。 

 2、local

是否定义检查条件,没条件就不检查,有条件就检查。

 三、视图的更新条件。

要使视图更新,视图中的行与基础表中的行之间必须存在一对一的关系。如果视图包含一下任何一项,则该视图不可更新:

1、聚合函数或窗口函数(SUM())、MIN()、MAX()、COUNT()等。

2、distinct

3、group by

4、having

5、union或者union all

示例

 四、视图的作用。

1、操作简单。

视图不仅可以简化用户对数据的理解,也可以简化它们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。

2、操作安全。

数据库可以授权,但不能授权到数据库特定行和特定的列上。通过视图用户只能查询和修改它们所能见到的值。

3、数据独立。

视图可帮助用户屏蔽真实表结构变化带来的影响 。

五、案例。

屏蔽字段

 多表联查

把多表联查封装到视图,后续的操作中直接查询创建的视图即可 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/384014.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言】函数指针和指针函数

文章目录[TOC](文章目录)前言概述函数指针定义&#xff1a;使用&#xff1a;回调函数指针函数前言 今天学一下函数指针 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 概述 函数指针&#xff1a;是一个指向函数的指针&#xff0c;在内存空间中存放的…

关于小程序内存在违规内容的处理警告

遇到了问题&#xff0c;就记录一下解决过程吧 小程序涉及提供在线观看视频服务&#xff0c;请补充文娱-视频广场类目&#xff1b; 我们的小程序做了一个类似抖音上下滑动观看视频的页面&#xff0c;被警告了&#xff0c;查看了文档&#xff0c; https://developers.weixin.qq.…

C语言程序-计算闰年平年

#include <stdio.h> int main() { int year ,month,day,i1; printf("欢迎使用本程序&#xff0c;使用愉快\n") ; while(i<10){ printf("请输入您需要计算的年\n"); scanf("%d",&year); printf("…

安全高效 | AIRIOT智慧工地管理解决方案

建筑工地施工材料、机械设备、工程车、人员各个环节管理相对复杂、建筑业也是安全事故频发的高危行业&#xff0c;安全管控尤为重要。建筑施工单位想要保障安全生产&#xff0c;做好能源消耗管控降低生产成本&#xff0c;需要解决掉很多现状问题&#xff1a;1、工地施工作业人员…

【Leetcode 剑指Offer】第 11 天 双指针(简单)

双指针剑指 Offer 18. 删除链表的节点剑指 Offer 18. 删除链表的节点 给定单向链表的头指针和一个要删除的节点的值&#xff0c;定义一个函数删除该节点。 返回删除后的链表的头节点。 示例 1: 输入: head [4,5,1,9], val 5 输出: [4,1,9] 解释: 给定你链表中值为 5 的第二…

服务器(centos7.6)已经安装了宝塔面板,想在里面安装一个SVN工具(subversion),应该如何操作呢?

首先&#xff0c;在登录进入宝塔面板&#xff0c;然后点击左侧终端&#xff0c;进入终端界面&#xff0c;如下图&#xff1a;------------------------------------------如果是第一次使用会弹出输入服务器用户名和密码&#xff0c;此时输入root账号和密码&#xff0c;即可进入…

2.基于Label studio的训练数据标注指南:(智能文档)文档抽取任务、PDF、表格、图片抽取标注等

文档抽取任务Label Studio使用指南 1.基于Label studio的训练数据标注指南&#xff1a;信息抽取&#xff08;实体关系抽取&#xff09;、文本分类等 2.基于Label studio的训练数据标注指南&#xff1a;&#xff08;智能文档&#xff09;文档抽取任务、PDF、表格、图片抽取标注等…

Python3-集合

Python3 集合 集合&#xff08;set&#xff09;是一个无序的不重复元素序列。 可以使用大括号 { } 或者 set() 函数创建集合&#xff0c;注意&#xff1a;创建一个空集合必须用 set() 而不是 { }&#xff0c;因为 { } 是用来创建一个空字典。 创建格式&#xff1a; parame …

奇淫技巧:熟练使用Fetch一个干翻PostMan的顶级技巧

一&#xff1a;如何使用fetch重新发送一个接口请求&#xff1f; 按照如下的请求进行复制 fetch("https://bip-test.yyuap.com/mdf-node/uniform/user/checkAuthByCode?terminalType1&serviceCodeorderList&codeuserdef_filterItem,userdef_schemaSetting"…

《C++ Primer》第十章 泛型算法

《C Primer》第十章 泛型算法 10.1 概述 大多数算法定义在头文件algorithm中&#xff0c;还有一些算法在numeric中。例如标准库算法find: int val 42;//即将查找的值 //如果在vec中找到想要的元素&#xff0c;则返回结果指向它&#xff0c;否则返回vec.cend() auto result …

小样本学习--学习记录

之前在做课题的时候&#xff0c;把数据不均衡和小样本的概念混淆了&#xff0c;昨天看了一篇论文&#xff1a;《 面向小样本数据的机器学习方法研究综述 &#xff08;陈良臣&#xff0c;傅德印&#xff09;》 &#xff0c;这篇论文写的非常清晰。推荐阅读。 网上的一些综述整理…

2月VR大数据:硬件份额变化不大,PS VR2首发游戏超50款

Hello大家好&#xff0c;每月一期的VR内容/硬件大数据统计又和大家见面了。 想了解VR软硬件行情么&#xff1f;关注这里就对了。我们会统计Steam平台的用户及内容等数据&#xff0c;每月初准时为你推送&#xff0c;不要错过喔&#xff01;本数据报告包含&#xff1a;Steam VR硬…

擅长捉弄的内存马同学:Valve内存马

前言 内存马的文章已经很久没有更新过了&#xff0c; 这篇文章不太适合想直接学习利用Valve内存马的师傅 &#xff0c;因为我这篇文章可能会有大篇笔墨去说Tomcat容器&#xff0c;至于原因就是我想更深入的了解一些Tomcat&#xff0c;而Valve内存马属于已经被师傅们玩烂了的一…

现场设备发生故障,如何第一时间通知相关人员?

一、前言 虹科物联网HMI作为一站式物联网解决方案&#xff0c;致力于解决用户在数据采集和可视化、远程监控、边缘计算、软PLC、数据存储&#xff08;SQL数据库和CSV文件&#xff09;、数据上云&#xff08;OPC UA、MQTT&#xff09;等方面的需求&#xff0c;帮助企业快速实现…

运营数据分析模型—用户画像

用户画像 伴随着大数据应用的讨论、创新,个性化技术成为了一个重要落地点。相比传统的线下会员管理、问卷调查、购物篮分析,大数据第一次使得企业能够通过互联网便利地获取用户更为广泛的反馈信息,为进一步精准、快速地分析用户行为习惯、消费习惯等重要商业信息,提供了足…

SpringCloud系列(十四)[分布式搜索引擎篇] - 索引库及文档的增删改查操作

本文主要介绍一下索引库及文档的一些增删改查操作, 以下都是一些常用的操作, 无需死记硬背, 只需要用到的时候常翻阅即可;   当然学习索引库和文档的一些基本操作还是要先在虚拟机启动一下 elasticsearch 及 kibana, 启动成功后输入 172.16.xx.xxx:5601 后出现以下界面即启动成…

信创-东方通和达梦适配

1 TLQ8.0 简单的例子&#xff0c;发送MQ&#xff0c;然后收消息连接是一样的&#xff0c;要不断去拉取数据消费的public static void main(String[] args) {//发送消息的目的队列String queName "lq";//连接工厂类QueueConnectionFactory queueConnectionFactory n…

制造业仓库很乱,该如何有效的管理呢?

首先来统计一下制造业仓库很乱的问题&#xff1a; 1.管理多仓库/多店铺&#xff0c;库存不清2.库存控制不合理&#xff0c;出现滞销与脱销的情况3.库存盘点时间长&#xff0c;数据不准确在传统管理模式下&#xff0c;一些中小型制造业的仓库&#xff0c;物料摆放位置、明细等都…

TOOLS_Seaborn相关性可视化分析示例

TOOLS_Seaborn相关性可视化分析示例 相关性应用场景 如要回答 推测 网站留存、观看时长、收藏次数、转发次数、关注数之间是否存在相关性&#xff0c;以及相关性有多大的问题&#xff1b; 对于更有关注的留存&#xff0c;可以尝试分析一个与其相关性比较大的因素&#xff0c…

【大数据专题】大数据理论基础01之分布式CPA原理深入理解

分布式CAP定理 CAP定理又称CAP原则&#xff0c;指的是在一个分布式系统中&#xff0c;Consistency&#xff08;一致性&#xff09;、 Availability&#xff08;可用性&#xff09;、Partition tolerance&#xff08;分区容错性&#xff09;&#xff0c;最多只能同时三个特性中…