使用视图方式操作MySQL数据表

2024-09-07 05:52

本文主要是介绍使用视图方式操作MySQL数据表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

7.1  认识视图

7.1.1  视图的含义

视图是一种常用的数据库对象,可以把它看成从一个或几个源表导出的虚表或存储在数据库中的查询,对视图所引用的源表来说,视图的作用类似于筛选。

视图一经定义后,就可以像源表一样被查询、修改和删除。视图为查看和存取数据提供了另外一种途径,使用查询可以完成的大多数操作,使用视图一样可以完成。

使用视图还可以简化数据操作。当通过视图修改数据时,相应源表的数据也会发生变化 ;同时,若源表的数据发生变化,则这种变化也可以自动地同步反映到视图中。

视图是在源表或者视图基础上重新定义的虚拟表,它可以从源表中选取用户所需的数据,那些对用户没有用或者用户没有权限了解的数据,都可以屏蔽掉。

7.2  创建视图

创建视图可以使用 Create View 语句,该语句完整的语法格式如下 :

Create

            [ Or Replace ]

            [ < 算法选项 > ]

            [ < 视图定义者 > ]

            [ < 安全性选项 > ]

View < 视图名 > [ < 视图的字段名称列表 > ]

As <Select 语句 >

            [ 检查选项 ]

说明

7.3  查看视图的相关信息

1.使用 Describe 语句查看视图的结构定义

如果只需要了解视图的各个字段的简单信息,可以使用 Describe 语句,其语法格式与查询数据表一样。通常情况下,可以使用缩写 Desc 代替 Describe

Describe < 视图名称 > ;

2.使用 Show Table Status 语句查看视图的基本信息

MySQL 中,可以使用 Show Table Status 语句查看视图的基本信息,其语法格式如下 :

Show Table Status Like < 视图名称 >

该语句执行结果中列“Comment”的值为“VIEW”,表示视图,其他列为 NULL(说明这是一个虚表)。

3.使用 Show Create View 语句查看视图的定义信息

MySQL 中,可以使用 Show Create View 语句查看视图的定义信息,其语法格式如下 :

Show Create View < 视图名称 > ;

任务 7-1】使用 Create View 语句创建单源表视图

任务描述

创建一个名称为“view_ 人邮社 0701”的视图,该视图包括“人民邮电出版社”出版的所有价格大于 40 元的图书的信息,视图中包括数据表“图书信息”中的商品编号、图书名称、出版社、商品类型等数据,已知“人民邮电出版社”的字段“出版社 ID”的值为 1

任务实施

任务 7-2】使用 Navicat for MySQL 创建多源表视图

任务描述

创建一个名称为“view_ 人邮社 0702”的视图,该视图包括“人民邮电出版社”出版的所有图书的信息,视图中包括数据表“图书信息”中的商品编号、图书名称、数据表“出版社信息”中的出版社名称、数据表“商品类型”中的类型名称等数据。

任务实施

视图创建工具窗口中单击构建按钮,关闭该窗口返回 Navicat for MySQL 的“视图”定义区域。设置好字段、数据表及关联条件、Where 条件的查询语句如下所示 :

任务 7-3】修改视图

当视图不符合使用需求时,可以使用 Alter View 语句对其进行修改,视图的修改方法与创建方法相似,其语法格式如下 :

Alter

          [ < 算法选项 > ]

          [ < 视图定义者 > ]

          [ < 安全性选项 > ]

View < 视图名 >

As <Select 语句 >

          [ 检查选项 ]

任务描述

1)修改视图“view_ 人邮社 0701”,使该视图包括“人民邮电出版社”出版的价格高于 40 元的所有图书信息,视图中包括数据表“图书信息”中的商品编号、图书名称、价格、出版社、商品类型等数据。

2)修改视图“view_ 人邮社 0702”,使该视图包括“人民邮电出版社”出版的价格高于 40 元的所有图书信息,视图中包括数据表“图书信息”中的商品编号、图书名称、数据表“出版社信息”中的出版社名称、数据表“商品类型”中的类型名称等数据。

任务实施

任务 7-4】利用视图查询与更新数据表中的数据

任务描述

1)创建一个名称为“view_ 用户注册 0703”的视图,该视图包括所有的用户注册信息。

2)利用视图“view_ 用户注册 0703”查询“权限等级”为“C”的用户注册信息。

3)利用视图“view_ 用户注册 0703”新增一个注册用户,用户 ID 为“7”,用户编号为“u00007”,用户名称为“测试用户”,密码为“todayBetter,权限等级为“A”,手机号码为“18074198678”,用户类型为“2”

4)使用视图“view_ 用户注册 0703”修改前一步新注册的用户,将其权限等级修改为“C”,用户类型修改为“1”

5)使用视图“view_ 用户注册 0703”删除前面新注册的用户“测试用户”。

任务实施

任务 7-5】删除视图

删除视图是指删除数据库中已存在的视图,删除视图时,只能删除视图的定义,不会删除源表的数据。在 MySQL 中,使用 Drop View 语句删除视图时,用户必须拥有 Drop 权限。

删除视图的语法格式如下 :

这篇关于使用视图方式操作MySQL数据表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1144236

相关文章

SQL中的外键约束

外键约束用于表示两张表中的指标连接关系。外键约束的作用主要有以下三点: 1.确保子表中的某个字段(外键)只能引用父表中的有效记录2.主表中的列被删除时,子表中的关联列也会被删除3.主表中的列更新时,子表中的关联元素也会被更新 子表中的元素指向主表 以下是一个外键约束的实例展示

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

如何去写一手好SQL

MySQL性能 最大数据量 抛开数据量和并发数,谈性能都是耍流氓。MySQL没有限制单表最大记录数,它取决于操作系统对文件大小的限制。 《阿里巴巴Java开发手册》提出单表行数超过500万行或者单表容量超过2GB,才推荐分库分表。性能由综合因素决定,抛开业务复杂度,影响程度依次是硬件配置、MySQL配置、数据表设计、索引优化。500万这个值仅供参考,并非铁律。 博主曾经操作过超过4亿行数据

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间