当前位置: 首页 > news >正文

实验8 视图创建与管理实验

一、实验目的

  1. 理解视图的概念。
  2. 掌握创建、更改、删除视图的方法。
  3. 掌握使用视图来访问数据的方法。

二、实验内容

在job数据库中,有聘任人员信息表:Work_lnfo表,其表结构如下表所示:
在这里插入图片描述
其中表中练习数据如下:
1.‘张明’,‘男’,19,‘北京市朝阳区’,‘1234567’
2.‘李广’,‘男’,21,‘北京市昌平区’,‘2345678’
3.‘王丹’,‘女’,18,‘湖南省永州市’,‘3456789’
4.‘赵一枚’,‘女’,24,‘浙江宁波市’,‘4567890’

按照下列要求进行操作:
1.创建视图info_view,显示年龄大于20岁的聘任人员id,name,sex,address信息。

CREATE VIEW info_view AS
SELECT Id, Name, Sex, Address
FROM Work_Info
WHERE Age > 20;

2.查看视图info_view的基本结构和详细结构。

SHOW COLUMNS FROM info_view;
SHOW CREATE VIEW info_view;

3.查看视图info_view的所有记录。

SELECT * FROM info_view;

4.修改视图info_view,满足年龄小于20岁的聘任人员id,name,sex,address信息。

DROP VIEW IF EXISTS info_view;CREATE VIEW info_view AS
SELECT Id, Name, Sex, Address
FROM Work_Info
WHERE Age < 20;

5.更新视图,将id号为3的聘任员的性别,由“男“改为“女”。

UPDATE Work_Info
SET Sex = '女'
WHERE Id = 3;

6.删除info_view视图。

DROP VIEW IF EXISTS info_view;

三、观察与简答

1.通过视图中插入的数据能进入到基本表中去吗?
是的,通过视图插入的数据通常会直接写入到关联的基本表中,前提是视图定义允许这样的操作,并且插入的数据满足视图和基本表的约束条件。但如果视图使用了聚合函数、DISTINCTGROUP BYHAVING、子查询或者某些复杂的JOIN操作,直接插入可能会受到限制或不允许。

2.WITHCHECK OPTION能起什么作用?
WITH CHECK OPTION是一个可选的视图定义子句,用于限制通过视图进行的插入或更新操作,确保插入或更新的数据满足视图定义中的条件。这意味着,如果试图通过视图插入或更新的数据不符合视图的SELECT语句中的WHERE条件,操作将被拒绝,从而保证视图数据的一致性和逻辑完整性。

3.修改基本表的数据会自动反映到相应的视图中去吗?
是的,当基本表中的数据发生改变时,这些改变会自动反映到基于这些表创建的视图中。因为视图是基本表数据的动态查询结果,每次查询视图时都会重新计算视图定义的查询表达式,所以任何对基本表的修改都会在视图中体现出来。

4.哪些视图中的数据不可以增删改操作?
不可以直接在基于聚合函数(如SUM,AVG等)、DISTINCTGROUP BYHAVING子句、复杂连接(多表JOIN)或者包含非确定性列(如计算列)定义的视图上执行增删改(INSERT, DELETE, UPDATE)操作。这些类型的视图通常只用于读取数据,因为它们不直接对应于基础表中的单一行或可预测的数据集。此外,如果视图定义中包含了子查询或表达式,使得插入或更新操作无法直接转换为对基本表的操作,那么这些操作也将被禁止。

相关文章:

实验8 视图创建与管理实验

一、实验目的 理解视图的概念。掌握创建、更改、删除视图的方法。掌握使用视图来访问数据的方法。 二、实验内容 在job数据库中&#xff0c;有聘任人员信息表&#xff1a;Work_lnfo表&#xff0c;其表结构如下表所示&#xff1a; 其中表中练习数据如下&#xff1a; 1.‘张明…...

C++ 开源库

1 PDFium PDFium 是一个开源的 PDF 渲染和处理库&#xff0c;最初由 Foxit Software 开发&#xff0c;并于2014年捐赠给了 Chromium 项目。PDFium 旨在为各种应用程序提供高效、灵活的 PDF 渲染和操作功能。 2 代码地址 https://github.com/chromium/pdfium 主要特性 渲染…...

LabVIEW滤波器性能研究

为了研究滤波器的滤波性能&#xff0c;采用LabVIEW设计了一套滤波器性能研究系统。该系统通过LabVIEW中的波形生成函数&#xff0c;输出幅值及频率可调的正弦波和白噪声两种信号&#xff0c;并将白噪声与正弦波叠加&#xff0c;再通过滤波器输出纯净的正弦波信号。系统通过FFT&…...

『C++成长记』vector模拟实现

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;C &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、存储结构 二、默认成员函数 &#x1f4d2;2.1构造函数 &#x1f4d2;2.2拷贝…...

【Mac】Charles for Mac(HTTP协议抓包工具)及同类型软件介绍

软件介绍 Charles for Mac 是一款功能强大的网络调试工具&#xff0c;主要用于HTTP代理/HTTP监视器。以下是它的一些主要特点和功能&#xff1a; 1.HTTP代理&#xff1a;Charles 可以作为HTTP代理服务器&#xff0c;允许你查看客户端和服务器之间的所有HTTP和SSL/TLS通信。 …...

LVS集群及其它的NAT模式

1.lvs集群作用&#xff1a;是linux的内核层面实现负载均衡的软件&#xff1b;将多个后端服务器组成一个高可用、高性能的服务器的集群&#xff0c;通过负载均衡的算法将客户端的请求分发到后端的服务器上&#xff0c;通过这种方式实现高可用和负载均衡。 2.集群和分布式&#…...

【RNN练习】天气预测

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 一、环境及数据准备 1. 我的环境 语言环境&#xff1a;Python3.11.9编译器&#xff1a;Jupyter notebook深度学习框架&#xff1a;TensorFlow 2.15.0 2. 导…...

prompt第四讲-fewshot

文章目录 前提回顾FewShotPromptTemplateforamt格式化 前提回顾 前面已经实现了一个翻译助手了[prompt第三讲-PromptTemplate]&#xff0c;prompt模板设计中&#xff0c;有说明、案例、和实际的问题 # -*- coding: utf-8 -*- """ Time &#xff1a; 2024/7/8 …...

StarRocks分布式元数据源码解析

1. 支持元数据表 https://github.com/StarRocks/starrocks/pull/44276/files 核心类&#xff1a;LogicalIcebergMetadataTable&#xff0c;Iceberg元数据表&#xff0c;将元数据的各个字段做成表的列&#xff0c;后期可以通过sql操作从元数据获取字段&#xff0c;这个表的组成…...

阅读笔记——《Fuzz4All: Universal Fuzzing with Large Language Models》

【参考文献】Xia C S, Paltenghi M, Le Tian J, et al. Fuzz4all: Universal fuzzing with large language models[C]//Proceedings of the IEEE/ACM 46th International Conference on Software Engineering. 2024: 1-13.【注】本文仅为作者个人学习笔记&#xff0c;如有冒犯&…...

【C++】使用gtest做单元测试框架写单元测试

本文主要介绍在将gtest框架引入到项目里过程中遇到的问题。 我的需求如下: 用CMake构建项目。我要写一些测试程序验证某些功能,但是不想每一个测试都新建一个main函数。 因为新建一个main函数就要在CMakeList.txt里增加一个project,非常不方便。 于是我搜了下,C++里有没…...

Java类与对象

类是对现实世界中实体的抽象&#xff0c;是对一类事物的描述。 类的属性位置在类的内部、方法的外部。 类的属性描述一个类的一些可描述的特性&#xff0c;比如人的姓名、年龄、性别等。 [public] [abstract|final] class 类名 [extends父类] [implements接口列表] { 属性声…...

xlwings 链接到 指定sheet 从别的 excel 复制 sheet 到指定 sheet

重点 可以参考 宏录制 cell sheet.range(G4)cell.api.Hyperlinks.Add(Anchorcell.api, Address"", SubAddress"001-000-02301!A1")def deal_excel(self):with xw.App(visibleTrue) as app:wb app.books.open(self.summary_path, update_linksFalse)sheet…...

风光摄影:相机设置和镜头选择

写在前面 博文内容为《斯科特凯尔比的风光摄影手册》读书笔记整理涉及在风景拍摄中一些相机设置&#xff0c;镜头选择的建议对小白来讲很实用&#xff0c;避免拍摄一些过曝或者过暗的风景照片理解不足小伙伴帮忙指正 &#x1f603;,生活加油 99%的焦虑都来自于虚度时间和没有好…...

python制作甘特图的基本知识(附Demo)

目录 前言1. matplotlib2. plotly 前言 甘特图是一种常见的项目管理工具&#xff0c;用于表示项目任务的时间进度 直观地看到项目的各个任务在时间上的分布和进度 常用的绘制甘特图的工具是 matplotlib 和 plotly 主要以Demo的形式展示 1. matplotlib 功能强大的绘图库&a…...

javascript设计模式总结

参考 通过设计模式可以增加代码的可重用性、可扩展性、可维护性 设计模式五大设计原则 单一职责&#xff1a;一个程序只需要做好一件事&#xff0c;如果结构过于复杂就拆分开&#xff0c;保证每个部分独立 开放封闭原则&#xff1a;对扩展开放&#xff0c;对修改封闭。增加需…...

gpt-4o看图说话-根据图片回答问题

问题&#xff1a;中国的人口老龄化究竟有多严重&#xff1f; 代码下实现如下&#xff1a;&#xff08;直接调用openai的chat接口&#xff09; import os import base64 import requests def encode_image(image_path): """ 对图片文件进行 Base64 编码 输入…...

【MySQL】7.MySQL 的内置函数

MySQL的内置函数 一.日期函数二.字符串函数三.数学函数四.其它函数 一.日期函数 函数名称说明current_date()当前日期current_time()当前时间current_timestamp当前时间戳(日期时间)date(datetime)截取 datetime 的日期部分date_add(date, interval d_value_type)给 date 添加…...

爬虫:Sentry-Span参数逆向

在抓某眼查数据太过频繁时会出现极验的验证码。极验的教程有很多&#xff0c;主要是发现在这里获取验证码的时候需要携带参数Sentry-Span。在这里记录一下逆向的主要过程&#xff0c;直接上补环境的代码。 window global; location {}; my_log console.log;(function () {l…...

音视频入门基础:H.264专题(12)——FFmpeg源码中通过SPS属性计算视频分辨率的实现

一、引言 在上一节《音视频入门基础&#xff1a;H.264专题&#xff08;11&#xff09;——计算视频分辨率的公式》中&#xff0c;讲述了通过SPS中的属性计算H.264编码的视频的分辨率的公式。本文讲解FFmpeg源码中计算视频分辨率的实现。 二、FFmpeg源码中计算视频分辨率的实现…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版&#xff0c;柱状图PPT模版&#xff0c;线状图PPT模版&#xff0c;折线图PPT模版&#xff0c;饼状图PPT模版&#xff0c;雷达图PPT模版&#xff0c;树状图PPT模版 图表类系列各种样式PPT模版分享&#xff1a;图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域&#xff0c;向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能&#xff0c;能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作&#xff0c;并通过具体…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件&#xff0c;我的文件路径是/etc/mysql/my.cnf&#xff0c;有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...