mysql之对视图的操作
1. 为什么要使用视图?
为了提高复杂SQL语句的复用性和表操作的安全性,MySQL数据库管理系统提供了视图特性。所谓视图,本质上是一种虚拟表,在物理上是不存在的,其内容与真实的表相似,包含一系列带有名称的列和行数据。但是,视图并不在数据库中以储存的数据值形式存在。行和列数据来自定义视图的查询所引用基本表,并且在具体引用视图时动态生成。
视图使开发者只关心感兴趣的某些特定数据和所负责的特定任务,只能看到视图中所定义的数据,而不是视图所引用表中的数据,从而提高了数据库中数据的安全性。
视图的特点如下:
(1). 视图的列可以来自不同的表,是表的抽象和在逻辑意义上建立的新关系。
(2). 视图是由基本表(实表)产生的表(虚表)。
(3). 视图的建立和删除不影响基本表。
(4). 对视图内容的更新(添加,删除和修改)直接影响基本表。
(5). 当视图来自多个基本表时,不允许添加和删除数据。
视图的操作包括创建视图,查看视图,删除视图和修改视图。
2. 创建视图
CREATE VIEW view_name AS 查询语句;
实例如下:
CREATE VIEW view_name AS SELECT * FROM t_dept;
3. 查看视图
3.1. SHOW TABLES语句查看视图名
aaarticlea/png;base64,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" alt="" />
SHOW TABLES不仅会显示表的名字,同时也会显示视图的名字。
3.2. SHOW TABLE STATUS语句查看视图详细信息
SHOW TABLE STATUS FROM 【from db_name】【LIKE 'pattern'】
SHOW TABLE STATUS不仅会显示表的详细信息,同时也会显示视图的详细信息。
3.3. SHOW CREATE VIEW语句查看视图定义信息
SHOW CREATE VIEW view_dept
3.4 DESCRIBE | DESC语句查看视图设计信息
DESCRIBE | DESC viewname
3.5 通过系统表查看视图信息
当Mysql数据库安装成功后,会自动创建系统数据库information_schema。在该数据库中存在一个包含视图信息的表格views,可以通过查看表格views来查看所有视图的相关信息。
4. 删除视图
DROP VIEW view_name 【,view_name】;DROP VIEW
通过DROP VIEW语句可以一次删除一个或多个视图。
实例:
DROP VIEW view_dept;
5. 修改视图
5.1 CREATE OR REPLACE VIEW语句修改视图
CREATE OR REPLACE VIEW view_name AS 查询语句;
5.2 ALTER语句修改视图
ALTER VIEW viewname AS 查询语句;
6. 利用视图操作基本表
6.1 检索(查询)数据
SELECT * FROM view_name;
6.2 利用视图操作基本表数据
由于视图是"虚表",所以对视图数据进行的更新操作,实际上是对其基本表数据进行更新操作。在具体更新视图数据时,需要注意以下两点:
(1). 对视图数据进行添加,删除,更新操作直接影响基本表。
(2). 当视图来自多个基本表时,不允许添加和删除数据。
添加数据操作:
和向表里添加数据相同。
删除数据操作:
和向表里删除数据相同。
更新数据操作:
和向表里更新数据相同。
mysql之对视图的操作的更多相关文章
- Mysql之视图的操作
视图的操作: 1.视图的创建: create view view_name as 查询语句; 2.视图的查看: show tables;// 显示所有的表和视图 show create view vi ...
- Mysql中的视图
什么是视图 通俗的讲,视图就是一条SELECT语句执行后返回的结果集.所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上. 视图的特性 视图是对若干张基本表的引用,一张虚表,查询语句执 ...
- MySQL基础之 视图
视图 视图就是从一个表或多个表导出来的一张虚拟的表.通过这个窗口可以看到系统专门提供的数据,方便用户操作的同时增加了安全性. 视图的特点: 1.视图的列可以来自于不同的表. 2.视图是由实际存在的表创 ...
- MySQL数据库之视图
1 引言 为了简化复杂SQL语句编写,以及提高数据库安全性,MySQL数据库视图特性.视图是一张虚拟表,不在数据库中以储存的数据值形式存在.在开发中,开发者往往只对某些特定数据和所负责的特定任务感兴趣 ...
- MySQL进阶(视图)---py全栈
目录 mysql进阶(视图)---py全栈 一.什么是视图? 二.视图的特性 三.视图的优点 四.使用场合 五.视图基本操作 六.案例 mysql进阶(视图)---py全栈 一.什么是视图? 视图是从 ...
- Mysql学习笔记—视图
1.什么是视图 视图(View)是一种虚拟存在的表.其内容与真实的表相似,包含一系列带有名称的列和行数据.但是视图并不在数据库中以存储的数据的形式存在.行和列的数据来自定义视图时查询所引用的基本表,并 ...
- Mysql基础知识--视图
一.视图的操作 为了提高SQL语句的复用性和操作表的安全性,,MySQL数据库管理系统5提供了视图特性. 视图:本质上是一种虚拟表,其内容与真实的表相似,包含一系列带有名称的行和列数据.但是视图并不在 ...
- 【简说Python WEB】视图函数操作数据库
目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...
- (八)MySQL事务、视图、变量、存储过程、函数、流程控制结构
补充:增删查改语句在数据库中基本通用,但这篇博客的内容基本是MySQL区别于其它数据库管理系统的知识,也要认真学习. 一.事务 1.含义:在MySQL中,可以通过创建事务来解决一些问题. 2.语法: ...
随机推荐
- show slave各项参数解释
how slave status 各个参数的解释 -- mysql 分类: mysql基础2012-08-23 11:03 2315人阅读 评论(0) 收藏 举报 服务器sslfilesqltable ...
- Centos6.5更新e1000网卡驱动
导读 在工作过程中经常遇到linux的操作系统网络不正常的情况,以前没有注意到,今天查看系统日志发现原来是网络驱动的问题.索性直接更新系统,更新网卡 问题:linux系统经常出现断网的情况,重启之后系 ...
- [BZOJ1659][Usaco2006 Mar]Lights Out 关灯
[BZOJ1659][Usaco2006 Mar]Lights Out 关灯 试题描述 奶牛们喜欢在黑暗中睡觉.每天晚上,他们的牲口棚有L(3<=L<=50)盏灯,他们想让亮着的灯尽可能的 ...
- POJ 1062 昂贵的聘礼
C - 昂贵的聘礼 Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u Submit St ...
- ios抓包官方文档
OS X Programs OS X supports a wide range of packet trace programs, as described in the following sec ...
- 【Hadoop】HIVE 小结概览
一.HIVE概览小结 二.HIVE安装 Hive只在一个节点上安装即可 .上传tar包 .解压 tar -zxvf hive-.tar.gz -C /cloud/ .配置mysql metastore ...
- Reverse Pairs
For an array A, if i < j, and A [i] > A [j], called (A [i], A [j]) is a reverse pair.return to ...
- ali2015校园招聘笔试大题
[本文链接] http://www.cnblogs.com/hellogiser/p/ali-2015-questions.html 1. 写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函 ...
- Java for LeetCode 060 Permutation Sequence
The set [1,2,3,…,n] contains a total of n! unique permutations. By listing and labeling all of the p ...
- Cocos2d-JS场景树
场景树概念(Scene Graph) 场景树是Cocos2d-JS中用来管理场景中所有元素的一个数据结构,场景树之所以被称为一棵树是因为它将一个场景的所有子结点以树状图的形式组织在一起. Cocos2 ...