mysql视图的操作
一、创建视图的语法形式
CREATE VIEW view_name
AS 查询语句 ;
使用视图
SELECT * FROM view_name ;
二、创建各种视图
1.封装实现查询常量语句的视图,即所谓的常量视图
CREATE VIEW view_test1
AS SELECT 3.1415926;
2.封装使用聚合函数(SUN,MIN,MAX,COUNT等)查询语句的视图
CREATE VIEW view_test2
AS SELECT COUNT(name) FROM t_student;
3.封装了实现排序功能(ORDER BY)查询语句的视图
CREATE VIEW view_test3
AS SELECT name from t_student ORDER BY id DESC;
4.封装了实现表内连接查询语句的视图
CREATE VIEW view_test4
AS SELECT s.name
FROM t_student AS s,t_group AS g
WHERE s.group_id=g.id AND g.id=2;
5.封装了实现表外连接(LEFT JOIN,RIGHT JOIN)查询语句的视图
CREATE VIEW view_test5
AS SELECT s.name
FROM t_student AS s LEFT JOIN t_group AS g ON s.group_id=g.id
WHERE g.id=2;
6.封装了实现子查询相关查询语句的视图
CREATE VIEW view_test6
AS SELECT s.name
FROM t_student AS s
WHERE s.gruop_id IN(SELECT id FROM t_group);
7.封装了实现记录联合(UNION,UNION ALL)查询语句的视图
CREATE VIEW view_test7
AS SELECT id,name FROM t_student
UNION ALL
SELECT id,name FROM t_group;
三、查看视图
1.SHOW TABLES;
即能查看表名还会查看视图
2.SHOW TABLE STATUS ;
查看表和视图的详细信息
SHOW TABLE STATUS
FROM view LIKE "view _selectproduct" \G
查看view数据库中的view _selectproduct视图
SHOW CREATE VIEW view_name;
查看视图的定义信息
3.DESCRIBE|DESC view_name;
查看视图设计信息
4.通过系统表查看视图信息
USE information_schema;
SELECT * FROM views WHERE table_name='view_selectproduct' \G
四、删除视图
DROP VIEW view_name1,view_name2;
可以一次删除1个或多个视图
五、修改视图
1.先删除视图,再重新创建视图
2.CREATE OR REPLACE VIEW _name
AS 查询语句;
.ALTER VIEW view_name
AS 查询语句;
六、利用视图操作基本表
对视图数据进行添加、删除、更改等操作直接影响基本表;
视图来自多个基本表时,不允许添加和删除数据。
view_product是查询所有字段的视图
1.添加数据操作
INSERT INTO view_product VALUES(11,'pear4',12.3);
2.删除数据操作
DELETE FROM view_product WHERE name=‘apple’;
3.更新数据操作
UPDATE view_product set price=3.5 WHERE name='pear';
mysql视图的操作的更多相关文章
- mysql之对视图的操作
1. 为什么要使用视图? 为了提高复杂SQL语句的复用性和表操作的安全性,MySQL数据库管理系统提供了视图特性.所谓视图,本质上是一种虚拟表,在物理上是不存在的,其内容与真实的表相似,包含一系列带有 ...
- MySQL视图简介与操作
1.准备工作 在MySQL数据库中创建两张表balance(余额表)和customer(客户表)并插入数据. create table customer( id int(10) primary key ...
- Mysql之视图的操作
视图的操作: 1.视图的创建: create view view_name as 查询语句; 2.视图的查看: show tables;// 显示所有的表和视图 show create view vi ...
- Mysql 视图 游标 触发器 存储过程 事务
Mysql 视图 触发器 存储过程 游标 游标是从数据表中提取出来的数据,以临时表的形式存放在内存中,在游标中有一个数据指针,在初始状态下指向的是首记录,利用fetch语句可以移动该指针,从而对游标中 ...
- Mysql视图的作用及其性能分析
定义:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表. 作用: 1.简化操作,不用进行多表查询. 2.当不同种类的用用户共享同一个数据库时,非常灵活,(用户以不同的 方式看待同一数据. ...
- MYSQL视图的学习笔记
MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具 1. 视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...
- mysql视图学习总结
转自http://www.cnblogs.com/wangtao_20/archive/2011/02/24/1964276.html 一.使用视图的理由是什么? 1.安全性.一般是这样做的:创建一个 ...
- 6 MySQL视图
目录: 1. 视图概述 1.1 为什么引入视图 1.2 什么是视图 1.3 视图的好处 1.4 视图的分类 2. 视图的建立和删除 3. 实验 1. 视图概述 1.1 为什么引入视图[1] 问题:假如 ...
- 深入解析MySQL视图view
阅读目录---深入解析MySQL视图view 创建视图 查看视图 视图的更改 create or replace view alter DML drop 使用with check option约束 嵌 ...
随机推荐
- Reading Lists
* Non-academic 1. Slowing Down to the Speed of Life, by Richard Carlson and Joseph Bailey.2. Your Mo ...
- [bzoj1004][HNOI2008][Cards] (置换群+Burnside引理+动态规划)
Description 小春现在很清闲,面对书桌上的N张牌,他决定给每张染色,目前小春只有3种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun很快就给出了答案.进一步,小春要求染出Sr张红 ...
- 解决maven无法加载本地lib/下的jar包问题(程序包XXX不存在)
这次一个项目用到maven编译,我在本地开发的时候jar包都是放在WEB-INF/lib目录下,通过 BuildPath将jar包导入,然后用MyEclipse中的:maven package命令打成 ...
- hdu 1867 kmp匹配
#include<stdio.h> #include<string.h> #define N 100100 void getnext(int next[],char s[]) ...
- 洛谷—— P1825 [USACO11OPEN]玉米田迷宫Corn Maze
https://www.luogu.org/problem/show?pid=1825 题目描述 This past fall, Farmer John took the cows to visit ...
- [BZOJ1045][HAOI2008]糖果传递(数学分析)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1045 分析:均分纸牌的环状版本. 先看线性的版本: 设f[i]表示第I位从第i+1位得 ...
- MYSQL中的主要查询方法
#简单查询 #查询表中的所有数据SELECT * FROM test; #查询表中的指定列的数据SELECT cid,cname FROM test; #过滤重复的数据SELECT DISTINCT ...
- 一篮子苹果,每天吃一半多一个吃,第十天吃一半多一个后就剩余一个,求一共多少个苹果,JAVA版
/** * @author xuzhu **/public class TestApple { public static void main(String[] args) { int days = ...
- Animations动画和Keyframes关键帧
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Android之设置拖拽监听
以EditText为例: username.setOnDragListener(new OnDragListener() { @Overridepublic boolean onDrag(View v ...