数据库笔记-【视图】

视图

视图通俗是企业想展示给用户看的,数据库存储的数据有很多,但是也有很多是不能对外公开的,做项目的过程就通过视图这个媒介达到这种效果

视图也可以保证数据库表结构字段的隐私安全等

create or replace view stu_v_1 as select id studentName as name from student where id <= 10;

用户只能更改视图中展现的数据,并且不允许用户去修改表的字段,更加安全


基本语法
#  视图创建
create [or replace] view 视图名 as select …… from …… [with [cascaded | local] check option]# 视图查询
show create view 视图名   # 查看创建语句
select * from 视图名      # 查看数据# 视图修改# 方式一create or replace view 视图名 as select …… from …… [with [cascaded | local] check option]  # 重新更新视图名# 方式二alter view 视图名 as select …… from …… [with [cascaded | local] check option]     #alter 声明修改表类似# 视图删除
drop view [if exists] 视图名 
视图创建
create or replace view stu_v_1 as select name,age from student where id <= 10;视图查询
show create view stu_v_1;select * from stu_v_1 where id <= 10;视图修改
# 方式一
create or replace view stu_v_1 as select name,age,tel from student where id >= 20;alter view stu_v_1 as select name,age,tel from student where id >= 20;视图删除
drop view if exists stu_v_1;

检查选项

用where时,不符合条件的数据可以插入表,但是视图不会展示

检查选项,避免插入不符合 条件数据,即数据不会插入表

cascaded 联结,检查选项对当前视图作用 且 前无检查选项的视图默认检查

local 本地检查,检查选项仅对当前视图作用

mysql可以根据一个视图创建另一个视图,并且两个视图的限制条件会结合起来

cascaded特点

在这里插入图片描述

前视图没有添加检查语句,但是后视图基于前视图,用了cascaded,则会给前视图默认添加检查选项,添加数据时,如果id>20会报错

local特点

在这里插入图片描述


视图更新

视图创立后,插入数据,有些 “客观” 数据不允许对其进行修改

A. 聚合函数或窗口函数(SUM()、 MIN()、 MAX()、 COUNT()等)

B. DISTINCT

C. GROUP BY

D. HAVING

E. UNION 或者 UNION ALL

create view stu_v_1 as select count(*) from student;
# "客观"  数据不允许修改
insert into stu_v_1 values(10);   # 插入其他数字

视图总
视图理解1

创建视图,展示表,视图被算入其中,所以命名要注意规范

视图是基于表的数据
在这里插入图片描述

用第一种方式修改视图

create or repalce view emp_v_1 as select id,name,age from emp where id <= 18;# 插入张三相关信息 到 emp表
insert into emp values(4,'李四',20,'销售','2000','2020-01-02',14,4);# 再次查询
select * from emp_v_1;

在这里插入图片描述


视图理解2

在刚刚基础上添加检查选

create or repalce view emp_v_2 as select id,naem,age from emp_v_1 where id >= 10 with cascaded check option# 插入数据到 emp表
insert into emp values(19,'李四',20,'销售','2000','2020-01-02',14,4);
# id为19 ,超过emp_v_1 范围 

直接插入表不符条件数据不受视图检查选项影响,视图不会将其展示。

如果是将数据通过插入到视图 插入到emp表,则会报错

在这里插入图片描述

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

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

相关文章

【前端每日基础】day9——函数的定义

在 JavaScript 中&#xff0c;函数可以通过两种方式来定义&#xff1a;函数声明和函数表达式。 函数声明&#xff1a;使用 function 关键字直接声明函数&#xff0c;后面跟着函数名和函数体。函数声明语句不是一个完整的语句&#xff0c;但是会被 JavaScript 解析器提升&#…

✨✨使用vue3打造一个el-form表单及高德地图的关联组件实例✨

✨1. 实现功能 &#x1f31f;表单内显示省市县以及详细地址 点击省市县输入框时&#xff0c;打开对应地图弹窗&#xff0c;进行位置选择选择位置回显入对应输入框表单内的省市县以及地址输入框同外嵌表单走相同的校验方式触发校验后点击reset实现清除校验与清空数据 &#x1f…

Base64在线编码解码方法

Base64在线编码解码 打开网站 在线工具网-梦幻加菲猫 选择“Base64编码解码” 输入需要编码/解码的内容&#xff0c;点击“编码”/“解码”按钮 编码&#xff1a; 解码&#xff1a; 4. 复制已经编码/解码后的内容。

【云原生】Kubeadm搭建K8S

一、部署Kubernetes 实验环境 服务器主机名IP地址主要组件k8s集群master01 etcd01master01192.168.10.100kube-apiserver kube-controller-manager kube-schedular etcdk8s集群node01 etcd02node01192.168.10.101kubelet kube-proxy docker flannelk8s集群node02 etcd03nod…

Linux——MySQL5.7编译安装、RPM安装、yum安装

文章目录 Linux——MySQL5.7编译安装、RPM安装、yum安装一、编译安装二、RPM安装三、yum安装 Linux——MySQL5.7编译安装、RPM安装、yum安装 卸载mysql # 查看是否安装了mysql [rootcsq ~]# rpm -qa |grep mysql mysql-community-server-5.7.36-1.el7.x86_64 mysql-community-c…

数据结构-题目

1.已知一颗完全二叉树的第6曾&#xff08;设根为第1层&#xff09;&#xff0c;有8个结点&#xff0c;则完全二叉树的结点个数&#xff0c;最少和最多分别是多少&#xff1f; 因此最少为39&#xff0c;最多为111 2.假设一棵三叉树的结点数为50&#xff0c;则它的最小高度为&…

掌握Android Intent与IntentFilter的艺术-深入探索匹配规则与实践技巧

引言 在Android开发的世界中&#xff0c;Intent和IntentFilter是实现组件间通信和任务调度的关键。它们不仅关系到应用的互操作性&#xff0c;还直接影响用户体验。本文将深入探讨Intent和IntentFilter的匹配规则&#xff0c;并通过实际代码示例&#xff0c;揭示如何高效利用这…

【声呐仿真】学习记录3-待续

【声呐仿真】学习记录3-后续 第五阶段-获取数据1.运行赫尔库勒斯沉船的世界&#xff1a;2.键盘操纵rov至合适的位置&#xff0c;调整Image topic&#xff0c;查看输出图像3.RVIZ SONAR 图像查看器插件&#xff08;没有对应的topic&#xff09;4.点云5.录制rosbag 第六阶段-查看…

Unity学习笔记---物理引擎

RigidBody 刚体 1&#xff0c;Gravity Scale 重力参数&#xff0c;是一个乘量参数&#xff0c;调整为0则不受重力影响。 2&#xff0c;Sleeping Mode 睡眠模式&#xff0c;分为永不睡眠/开始时睡眠/开始时不睡眠3种。如需要一直碰撞检测可以选择永不睡眠。 BoxCollider 碰撞…

守护数据安全:精选七款数据加密软件

在数字化日益普及的今天&#xff0c;数据安全成为了企业和个人不可忽视的重要问题。加密软件作为数据安全的第一道防线&#xff0c;扮演着至关重要的角色。本文将为读者精选七款优秀的加密软件&#xff0c;帮助大家更好地守护数据安全。 Ping32数据加密软件 Ping32数据加密软…

Timestamp Unix时间戳在线转换

Timestamp Unix时间戳在线转换 打开网站 在线工具网-梦幻加菲猫 选择“时间戳转换” 在前半部分输入框输入时间/时间戳&#xff0c;点击“转换>>”按钮&#xff0c;即可转换完成 得到转换结果

getter和setter方法的优缺点

Getter和Setter方法&#xff0c;在计算机编程中常被用来访问和修改对象的内部状态。下面让我们来看看它们各自的优缺点吧~ Getter方法的优点&#xff1a; 1. 封装性&#xff1a;Getter方法能够隐藏对象的内部状态&#xff0c;只对外提供必要的访问接口&#xff0c;这样可以防止…

Python自动化SQL注入和数据库取证工具库之sqlmap使用详解

概要 在网络安全领域,SQL注入仍然是最常见的攻击之一。sqlmap是一个开源的自动化SQL注入和数据库取证工具,它提供了广泛的功能来检测和利用SQL注入漏洞。本文将详细介绍sqlmap的安装、特性、基本与高级功能,并结合实际应用场景,展示其在网络安全测试中的应用。 安装 sqlm…

银行监管报送系统系列介绍(十七):一表通2.0

国家金融监督管理总局于9月发布了【一表通2.0&#xff08;试用版&#xff09;】&#xff08;简称&#xff1a;一表通2.0&#xff09;&#xff0c;在原试点报送范围的基础上扩大了试点报送区域&#xff0c;意味着将陆续扩大试报送机构范围&#xff0c;推进的速度已明显加快。尽早…

HQChart使用教程98-右键菜单2.0使用介绍

HQChart使用教程98-右键菜单2.0使用介绍 内置右键菜单启用右键菜单定制右键菜单内容1. 注册内置右键菜单创建回调事件2. 修改内置菜单的显示内容回调函数格式菜单数据结构示例 3. 注册菜单项点击事件回调 右键事件完整示例HQChart代码地址 内置右键菜单 HQChart h5版本内置提供…

Spring Boot + Mybatis-plus代码生成器 自动生成项目结构

首先创建一个新的springboot项目 项目初始化结构如下&#xff1a; 运行自动生成结构代码后的效果如下&#xff1a; 对比初始化项目结构可以发现结构中多了以下几个部分; controller文件夹存储接口类mapper文佳夹存储数据库映射model文件夹存储数据库模型类Service文件夹存储业…

未授权访问:Docker未授权访问漏洞

目录 1、漏洞原理 2、环境搭建 3、未授权访问 4、通过crontab反弹宿主机shell 防御手段 今天继续学习各种未授权访问的知识和相关的实操实验&#xff0c;一共有好多篇&#xff0c;内容主要是参考先知社区的一位大佬的关于未授权访问的好文章&#xff0c;还有其他大佬总结好…

LabVIEW

LabVIEW&#xff08;Laboratory Virtual Instrument Engineering Workbench&#xff09;是由美国国家仪器&#xff08;National Instruments&#xff0c;简称NI&#xff09;公司开发的一种程序开发环境&#xff0c;它主要用于数据采集、仪器控制、测试和测量等应用。LabVIEW的最…

中文环境下编写sql server存储过程用中文命名的好处

在中文环境下编写SQL Server存储过程用中文命名的好处 随着信息技术的发展和编程语言对多语言字符集的支持增强&#xff0c;越来越多的开发者在中文环境下编写SQL Server存储过程时&#xff0c;开始使用中文命名。本文将讨论在这种情况下使用中文命名的诸多好处。 1. 提高可读…

万字长文带你掌握 IDEA 2024 的30个Debug调试绝技,让你开发与修复 Bug 的效率提升亿倍

万字长文带你掌握 IDEA 2024 的30个Debug调试绝技&#xff0c;让你开发与修复 Bug 的效率提升亿倍 博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — …