mysql 视图_mysql视图
一。为什么使用视图
1.重用SQL语句。
2.简化复杂的SQL操作。在编写查询后,可以方便地重用它而不必知道它的基本查询细节。
3.使用表的组成部分而不是整个表。
4.保护数据。可以给用户授予表的特定部分的访问权限而不是整个表的访问权限。
5.更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据。
6.在视图创建之后,可以用与表基本相同的方式利用它们。可以对视图执行SELECT操作,过滤和排序数据,将视图联结到其他视图或表,甚至能添加和更新数据(添加和更新数据存在某些限制)。
7.重要的是知道视图仅仅是用来查看存储在别处的数据的一种设施。视图本身不包含数据,因此它们返回的数据是从其他表中检索出来的。在添加或更改这些表中的数据时,视图将返回改变过的数据。
二。视图的规则和限制
1.与表一样,视图必须唯一命名(不能给视图取与别的视图或表相同的名字)。
2.对于可以创建的视图数目没有限制。
3.为了创建视图,必须具有足够的访问权限。这些限制通常由数据库管理人员授予。
4.视图可以嵌套,即可以利用从其他视图中检索数据的查询来构造一个视图(但是会影响性能)。
5.ORDER BY可以用在视图中,但如果从该视图检索数据的SELECT语句中也含有ORDER BY,那么该视图中的ORDER BY将被覆盖。
6.视图不能索引,也不能有关联的触发器或默认值。
7.视图可以和表一起使用。例如,编写一条联结表和视图的SELECT语句。
三。创建,修改,删除视图
1.创建视图
create view 视图名(注意唯一) as 执行语句(包括查询,删除,修改,插入,但最好不要用除了查询以外的,因为有很多限制,而且视图主要是用来查询的)//上面语句的意思:把查询结果当做视图栗子:create view users as select * from user执行语句就创建了一个users视图了
2.查看创建视图的语句(即:这个视图是后面的查询语句是什么)
show create view 视图名
栗子:
查看先前创建的视图:
show create view users
结果:
这就是create view 列中的内容:
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `users` AS select `user`.`id` AS `id`,`user`.`user_name` AS `user_name`,`user`.`password` AS `password`,`user`.`create_time` AS `create_time` from `user`
3.删除视图
drop view 视图名栗子:drop view users
4.更新视图
方式一:
先删除原先的视图,然后再创建
drop view userscreate view users as select * from user
方式二:
直接更新视图,语句如下:
create or replace view users as 执行语句
四。使用视图
在上面我们已经知道如何创建视图,接下来将会看到如何使用视图。
1.简单使用
当查询的时候,完全可以把视图当做一个表来看待。当我们的查询语句非常复杂时,且多次使用,那会非常香。
栗子:
查询视图中所有数据select * from users查询视图中id=1的行select * from users where id = 1
注意:
1.视图并不是存在的表,使用的时候还是通过语句去查了表。
2.通过WHERE子句从视图中检索特定数据。在MySQL处理此查询时,它将指定的WHERE子句添加到视图查询中的已有WHERE子句中,以便正确过滤数据。(将会自动组合)。
3.创建的视图最好能重用,不然没啥意义。(我用一次为啥要创建视图呢?是不是这个理)
mysql 视图_mysql视图相关推荐
- linux创建mysql视图_MySQL视图基本操作
1.准备工作 在MySQL数据库中创建两张表balance(余额表)和customer(客户表)并插入数据. create table customer( id int(10) primary key ...
- mysql常用的视图_MySQL视图
MySQL视图的基本操作 视图是数据库中的虚拟表.包含一系列带有名称的行和列数据.视图是从一个或者多个表中导出的,视图的行为与表非常相似,用户可以使用SELECT语句查询数据,以及使用INSERT.U ...
- mysql视图_MySQL视图详解
在讲解视图的时候我们的明白下面几个概念. 什么是视图? 视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据.作为一个select语句保存在数据字典中的. 视图是干什么用的? 通过视图, ...
- mysql 数据库视图_MySQL视图介绍
/* 视图 */ ------------------ 什么是视图: 视图是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形 ...
- mysql front 视图_mysql 视图
mysql 视图 那随意了 • 2020 年 06 月 02 日 视图 简介 定义 视图是一个虚拟的表,其内容有查询定义.同真实的表一样,视图包含一些力带有名称的列和行数据.行和列的数据来自定义视图查 ...
- mysql建立视图_MySQL视图的应用之创建视图
MySQL视图的应用之创建视图 视图也称虚表,包括执行某个查询返回的一组记录.视图可以简化获取数据的方法,并通过别名来实现抽象查询. 为了简化查询,在实际项目开发过程中,通常可以采用为数据库中的某个表 ...
- c mysql 视图_mysql 视图
六.mysql 视图 6.1.什么是视图 ① 定义 视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数 ...
- mysql修改视图_MySQL视图的应用之修改视图
MySQL视图的应用之修改视图 为了提高工作效率,对不满足条件的视图可以通过修改的方式进行更改.实现本章中的实例,我们首先要创建数据表,然后在创建视图,先不要着急,我们下面会详细介绍!~ 那么在我们开 ...
- mysql触发器_MySQL视图\触发器\事务初步认识
视图 什么是视图? 视图就是通过查询得到虚拟表,然后将虚拟表保存下来,下次可以直接使用 为什么用视图? 如果要频繁的操作一张虚拟表,你就可以将该虚拟表制作成视图,后续可以直接进行操作 如何用视图 固定 ...
最新文章
- SAP推出iPhone手机端企业智能管理应用
- for循环与while循环效率对比·5年以下编程经验必看C#】
- 标定板标定和九点标定的区别_标定系列一 | 机器人手眼标定的基础理论分析
- SCCM2007 R2的部署前准备,SCCM系列之一
- 微信公众号前端40163解决办法
- 华为设备MSDP配置命令
- 【建议收藏】六个免费的在线OCR识别网站,显著提高你的工作效率!
- ios8 关于定位的一些问题
- 云服务器项目乱码,云服务器Ubuntu系统下中文乱码问题解决方案
- 许可协议html,许可协议
- java实现简单的文件下载
- 最大信息熵增益_信息熵(Entropy)、信息增益(Information Gain)
- html缩小照片尺寸像素不变,怎么把图片变小 像素不变
- 使用微信小程序editor富文本编辑器(爬坑要点)
- 如何用mac远程控制windows10
- 你逛过凌晨4点的校园吗? -- 前端人的漫漫长路
- 手把手教学差异表达基因分析
- 直线模组常用的驱动模式有哪些?
- 物联网调查报告:机遇与挑战
- 《Evaluate the Malignancy of Pulmonary Nodules Using the 3D Deep Leaky Noisy-or Network》论文解析
热门文章
- android enum java包_Android @IntDef注解取代Java enum枚举提高性能详解
- 区块链BaaS云服务(28)TOP Network 之P2P 网络
- Python 打包 exe 程序避坑指南:没有安装包也能运行小程序啦~开心
- 09-CA/TA编程:storage demo
- php 单利模式实例化,php-单例模式实现mysql实例化对象
- 【网络安全】无需SOCKS支持,帮助广大渗透测试人员建立一条隐蔽的通信信道
- Mysql学习笔记之常用数据类型
- 5.用户APC执行过程
- 11、MySQL字符集和校对规则详解
- 笔趣看小说全部章节爬取实战