mysql 视图 教程_MySQL VIEW(视图)
一、什么是视图?
视图就是存储下来的SQL SELECT语句,也可以说是虚拟的表(在MySQL中视图被当着表来用)。这些数据可以是从一个或几个基本表(或视图)的数据。也可以是用户自已定义的数据。其实视图里面不存放数据的,数据还是放在基本表里面,基本表里面的数据发生变动时,视图里面的数据随之变动。
视图的作用:
视图可以让查询变得很清楚:
如果您要找的数据存放在三张关系表里面,查看数据的时候,你就要写个联合查询了。换种方法,我把联合查询的数据放到视图里面,这样查询起来是不是更方便呢?
保护数据库的重要数据,给不同的人看不同的数据:
假如您让别人帮您开发一套系统,但是你又想把真正表的暴露出来,这个时候视图是不是最好的选择呢?
视图的类型:
mysql的视图有三种类型:MERGE、TEMPTABLE、UNDEFINED。如果没有ALGORITHM子句,默认算法是UNDEFINED(未定义的)。算法会影响MySQL处理视图的方式。
1,MERGE,会将引用视图的语句的文本与视图定义合并起来,使得视图定义的某一部分取代语句的对应部分。
2,TEMPTABLE,视图的结果将被置于临时表中,然后使用它执行语句。
3,UNDEFINED,MySQL将选择所要使用的算法。如果可能,它倾向于MERGE而不是TEMPTABLE,这是因为MERGE通常更有效,而且如果使用了临时表,视图是不可更新的。
二、创建、删除视图:
创建视图基本语法:
CREATE
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]
如下:
mysql> CREATE VIEW sc ASSELECT s.Name,c.Cname FROM students AS s RIGHT JOIN courses AS c ON s.CID1=c.CID;
Query OK, 0 rows affected (0.07 sec)
mysql> SHOW TABLES;
+------------------+
| Tables_in_jiaowu |
+------------------+
| courses |
| sc|
| scores |
| students |
| tutors |
+------------------+
5 rows in set (0.01 sec)
mysql> SELECT * FROM sc;
+--------------+------------------+
| Name | Cname |
+--------------+------------------+
| GuoJing | TaiJiquan |
| YangGuo | TaiJiquan |
| DingDian | Qishangquan |
| HuFei | Wanliduxing |
| HuangRong | Qianzhuwandushou|
| YueLingshang | Wanliduxing |
| ZhangWuji | Hamagong |
| Xuzhu | TaiJiquan |
| NULL | Yiyangzhi |
| NULL | Jinshejianfa |
| NULL | Qiankundanuoyi |
| NULL | Pixiejianfa |
| NULL | Jiuyinbaiguzhua |
+--------------+------------------+
13 rows in set (0.02 sec)
mysql 视图 教程_MySQL VIEW(视图)相关推荐
- mysql 视图 教程_MySQL视图简介及基本操作教程
前言 视图是数据库系统中一种非常有用的数据库对象.MySQL 5.0 之后的版本添加了对视图的支持. 认识视图 视图是一个虚拟表,其内容由查询定义.同真实表一样,视图包含一系列带有名称的列和行数据,但 ...
- mysql 视图 局部变量_mysql创建视图和存储过程,变量
创建视图 sql>create view 视图名 as select语句; 修改视图并添加别名 sql>create or replace view empvu10 (employee_n ...
- mysql修改视图定义_MySQL修改视图
修改视图是指修改 MySQL 数据库中存在的视图,当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性. 基本语法 可以使用 ALTER VIEW 语句来对已有的视图进行修改. 语法格 ...
- mysql 创建视图语法_MySQL创建视图的语法格式
视图,具有简化查询语句.安全性和保证逻辑数据独立性等作用 创建视图的语法格式 视图中,包含SELECT查询的结果,因此,视图的创建基于SELECT语句,和已经存在的数据表,视图可以建立在一张表上,也可 ...
- mysql 全文检索 教程_MySQL:详细说明MySQL全文检索图文详细教程
软件安装:装机软件必备包 本站电脑知识提供电脑入门知识,计算机基础知识,计算机网络应用基础知识,电脑配置知识,电脑故障排除和电脑常识大全,帮助您更好的学习电脑!不为别的,只因有共同的爱好,为中国互联网 ...
- mysql如何进行视图恢复_mysql事务 视图 索引 备份和恢复
事务 1.事务: 概念:是作为单个逻辑工作单元执行的一系列操作 多个操作作为一个整体向系统提交,要么都执行,要么都不执行 事务是一个不可分割的工作逻辑单元 默认情况下 , 每条单独的SQL语句视为一个 ...
- mysql less6教程_MySQL 超级入门教程
原标题:MySQL 超级入门教程 MySQL简介 1.什么是数据库 ? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二 ...
- mysql资源教程_MySQL 超级入门教程(内含资源福利)
原标题:MySQL 超级入门教程(内含资源福利) MySQL简介 1.什么是数据库 ? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场 ...
- mysql grant教程_MySQL如何使用授权命令grant
本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...
最新文章
- python文档的数据读取,把读取数据写入到新的表里
- 【运筹学】线性规划数学模型 ( 三要素 | 一般形式 | 向量形式 | 矩阵形式 )
- Linux:网络基础配置
- “RPC好,还是RESTful好?”
- YOLO_ Real-Time Object Detection 实时目标检测
- ListBox实现拖拽排序功能
- 特定视图呈现时发生的事件顺序
- java随机姓名_Java生成随机姓名、性别和年龄的实现示例
- 模拟调频信号FM解调的matlab和C语言实现
- pytorch中的torch.rand(),torch.randn(),torch.randerm()的关系
- 物联网通信之Coap 协议
- 使用ViewPager + Fragment实现微信底部Tab效果
- 团体程序设计天梯赛-练习集-L1-046. 整除光棍
- 6、PXE安装ESXI6.0
- 新益华基层医疗系统使用方法_「热缩带」管道防腐新方向,聚乙烯热缩带安装使用方法...
- 求两个数的最小公倍数方法汇总
- 如何让你的YOLOV3模型更小更快?
- 百度地图 多轨迹 示例
- HAC集群添加新节点
- 碳中和大潮惊涛拍岸,科技企业如何迈入这条大江大河?
热门文章
- 轻松高效玩转DTO(Data Transfer Object)
- win10搜索计算机中所有excel,windows10系统下怎样使用excel进行高级筛选
- python3.5 mysql 库_Python 3.5 连接Mysql数据库(pymysql 方式)
- 做diff_Vue3.0时代你必须了解的:diff算法原理和优化
- android如何实现支付宝,(Android集成支付宝支付)react-native实现支付宝支付
- Meshlab和CloudCompare截图时去除“旋转圈”
- Win 10 安装detectron2 详细手册
- ubuntu websocket python2
- C++11 新特性之std::thread
- Python 计算各类距离