MySQL数据库笔记(三)

MySQL数据库笔记(三)

MySQL视图
本质上是一种虚拟表,其内容和真实的表像是。
包含了带有名称的列和行数据

视图并不在数据库中以存储数据值形式存在。
行和列的数据来于自定义视图的查询所引用的基本表,
并且在具体引用视图时动态生成.

适用视图的时候,只能查看到视图中定义的数据。从而提高了数据库中数据的安全性.

特点:
(1)视图的列可以来自不同的表,是表的抽象和在逻辑意义上建立的新关系。
(2)视图是由基本表(实 表)产生的表(虚表)
(3)视图的建立和删除不影响基本表
(4)对视图内容的更新(添加、删除、修改)直接影响基本表

####视图的数据来源于查询语句
####创建视图
create view view_name as 查询语句.
视图一般以view_xxx或者v_xxx的阳狮进行命名。

####查询视图
select * from view_name;

####查看所有的表包括视图表
show tables;

####查看视图详细信息
show table status [from db_name] [like ‘pattern’]
pattern:视图表.
db_name表示用来设置数据库
show table status表示将显示所有设置数据库里表和视图的详细信息.

       Name: 表和视图名
     Engine: 表的存储引擎
    Version: 表的.frm文件的版本号
 Row_format: 表的行的数目
       Rows: 表中行的数目

Avg_row_length: 表中行平均行长度
Data_length: 表数据文件的长度
Max_data_length: 表数据文件的最大长度
Index_length: 表索引文件的长度
Data_free: 表被整序后,但是未适用的直接的数目。
Auto_increment: 表中下一个auto_increment值
Create_time: 表的创建时间
Update_time: 表的之后一次更新时间
Check_time: 表的最后一次检查时间
Collation: 表的字符集
Checksum: 表的活性校验
Create_options: 表的额外选项
Comment: 表的注释

mysql> show table status from view like ‘new_product’
*************************** 1. row ******************
Name: new_product
Engine: NULL
Version: NULL
Row_format: NULL
Rows: NULL
Avg_row_length: NULL
Data_length: NULL
Max_data_length: NULL
Index_length: NULL
Data_free: NULL
Auto_increment: NULL
Create_time: NULL
Update_time: NULL
Check_time: NULL
Collation: NULL
Checksum: NULL
Create_options: NULL
Comment: VIEW
1 row in set (0.00 sec)

####查看视图定义信息
show create view view_name \G ;// \G表示一种语义 在dos下使用,可以更好的格式进行显示.

####视图设计信息
desc view_name;

information_schema数据库用于存储数据库对象信息
你们的views表中存储的是视图信息
use information_schema;
select * from views where table_name=“new_product” \G;

####删除视图
drop view view_name ;

####修改视图
create or replace view view_name as 查询语句.

alter view view_name as 查询语句

#####视图你们的数据的操作(增 、删、改)会对基本表中的数据有影响
#####视图来自多个基本表时,不允许添加和删除数据.

####把视图表理解成一个普通表就可以了。无非就是对视图表的操作会对基本表中的数据有影响。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100796.html原文链接:https://javaforall.net

(0)
上一篇 2021年7月10日 下午4:00
下一篇 2021年7月10日 下午5:00


相关推荐

  • react父子组件传值

    react父子组件传值react父子组件传值react父子组件传值一、父给子传值1.子组件是函数组件时,通过参数props接收2.子组件是类组件时,通过参数this.props接收二、子给父传值react父子组件传值一、父给子传值1.子组件是函数组件时,通过参数props接收2.子组件是类组件时,通过参数this.props接收二、子给父传值1.由父组件给子组件提供一个回调函数,传递给子组件;2.当子组件给父组件传值时,调用该回调函数3.父组件通过回调函数调用,拿到子组件传来的参数结果:点击按钮后

    2022年5月17日
    77
  • manus充值教程

    manus充值教程

    2026年3月15日
    3
  • Ubuntu下VLC播放器的字幕乱码问题

    Ubuntu下VLC播放器的字幕乱码问题为了为可能进入的实验室实习做准备,今天重新装上了Ubuntu,今天的安装总的来说还是顺利多了。在播放软件上,这次我选择了VLC,因为感觉mplayer虽然强大,但是始终界面不是十分友好。而VLC也是灰常强大的。但是,在Linux下播放电影时,经常会遇到乱码的问题,下面就谈谈我的经验。造成字幕乱码的原因可能有两个:1.GB字符的解码:因为Linux下中文默认采取utf-

    2022年7月15日
    21
  • linux中vi编辑器保存文件命令_linux用vi编辑文件

    linux中vi编辑器保存文件命令_linux用vi编辑文件工具:Linux方法:1、首先进入Linux的命令行界面.在目录下创建一个用于测试的文本文件(touchfilename).这里就新建了一个test12文本文件.当然这个名字是可以随便取得.2、用”vitest12″命令进入vi命令行模式(vifilename).如果要想编辑文本文件.必须要转换到插入模式下,也就是按一下键盘上的”i”就可以了.这样就可以编辑文本,删除文本中的内容.按键盘上…

    2026年2月13日
    5
  • 为什么我拖了一个多月才开始使用OpenClaw?(附接入飞书完整详细教程,新手必看)

    为什么我拖了一个多月才开始使用OpenClaw?(附接入飞书完整详细教程,新手必看)

    2026年3月13日
    2
  • java switch的意思_java switch

    java switch的意思_java switchjavaswitch[编辑]概述Java中的switch是“开关”的意思,有时也被划分为一种“选择语句”。根据一个整数表达式的值,switch语句可从一系列代码选出一段执行。一.Java的简介Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球…

    2022年7月26日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号