一、视图

  1. 概念

    a. 视图是一张虚拟表,它表示一张表的部分或多张表的综合的结构

    b. 视图仅仅是表结构,没有数据。视图的结构和数据建立在表的基础上

  2. 创建视图

    a. 语法:

      create [or replace] view 视图的名称

      as

        select 语句

    b. 例题

      create view vw_stu

      as

      select stuname, stusex,writtenexam,labexam from stuinfo inner join stumarks using(stuno)

  3. 查询视图

    a. 语法:desc 视图

  4. 查看创建视图的语法

    a. 语法:show create view 视图名;

  5. 显示所有视图

    a. show tables;

    b. select table_name from information_schema.views;

    c. show table status where comment='view';

二、视图操作

  1. 更改视图

    a. 语法:alter view 视图名

        as

        select 语句

  2. 删除视图

   a. 语法:drop view [if exists] 视图1,视图2,视图3...

三、视图作用

  1. 筛选数据,防止未经许可访问敏感数据

  2. 隐藏表格结构

  3. 降低sql语句复杂度

四、视图的算法

  1.算法种类:

     merge 合并算法,将视图的语句和外层的语句合并后再执行。

    temptable 临时表算法,将视图生成一个临时表,再执行外层语句

    undefined 未定义,mysql到底用merge还是temptable由mysql决定,这是一个默认的算法,一般视图都会选择merge算法,因为merge效率更高。

  2. 在创建视图的时候指定算法

    create algorithm=temptable view 视图名

    as

    select 语句

mysql学习笔记--数据库视图的更多相关文章

  1. MySQL学习笔记-数据库文件

    数据库文件 MySQL主要文件类型有如下几种 参数文件:my.cnf--MySQL实例启动的时候在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还介绍了参数类 ...

  2. MySQL学习笔记-数据库内存

    数据库内存 InnoDB存储引擎内存由以下几个部分组成:缓冲池(buffer pool).重做日志缓冲池(redo log buffer)以及额外的内存池(additional memory pool ...

  3. MySQL学习笔记-数据库后台线程

    数据库后台线程 默认情况下讲述的InnoDB存储引擎,以后不再重复声明.后台线程有7个--4个IO thread,1个master thread,1个锁监控线程,1个错误监控线程.IO thread的 ...

  4. MySQL学习笔记之视图

    视图是对磁盘上保存的表数据的抽象,即抽取一个表或多个表的部分行或列的数据,展示给使用者. 首先列举下MySQL中最简单的对视图操作的语法: 1.创建视图: create view 视图名 as sel ...

  5. mysql学习笔记--数据库操作

    一.显示数据库 show databases; 二.创建数据库 create database [if not exists] 数据库名 [字符编码] 注意: a. 如果已经存在数据库再创建会报错 b ...

  6. MYSQL学习笔记——数据库范式及MYSQL优化整体思路

    一.数据库范式                                                                               为了建立冗余较小.结构合理的 ...

  7. mysql学习笔记--数据库索引

    一.索引的优点:查询速度快 二.索引的缺点: 1. 增.删.改(数据操作语句)效率低了 2. 索引占用空间 三.索引类型: 1. 普通索引 2. 唯一索引(唯一键) 3. 主键索引:只要主键就自动创建 ...

  8. mysql学习笔记--数据库单表查询

    一.查询语句 1.  select [选项] 列名 [from 表名]  [where 条件]  [order by 排序]  [group by 分组]  [having 条件]  [limit 限 ...

  9. mysql学习笔记--数据库设计

    一.数据库基本概念 1. 关系:两个表的公共字段 2. 行:也称记录,也称实体 3. 列:也称字段,也称属性 4. 数据冗余:相同的数据存在不同的地方. 注意:冗余只能减少,不能杜绝. 减少冗余,只能 ...

随机推荐

  1. json文件转换成excel

    1.环境 python2.7 2.库 xlwt.demjson.json 3.code # -*- coding: utf-8 -*- import xlwt,demjson,json if __na ...

  2. 团队第五次 # scrum meeting

    github 本此会议项目由PM召开,召开时间为4-9日晚上9点 召开时长15分钟 任务表格 袁勤 负责协调前后端 https://github.com/buaa-2016/phyweb/issues ...

  3. Linux中VIM的使用

    转自:http://www.lupaworld.com/?uid-296380-action-viewspace-itemid-118973 vi/vim 基本使用方法本文介绍了vi (vim)的基本 ...

  4. IP池验证IP是否可用 及scrapy使用 ip池

    简单验证 import requests url = "http://www.baidu.com/"proxies = {"http": "http: ...

  5. peewee 通俗易懂版

    Peewee作为Python ORM之一 优势:简单,小巧,易学习,使用直观 不足之处:需要手动创建数据库 基本使用流程 1⃣️根据需求定义好Model(表结构类) 2⃣️通过create_table ...

  6. Linux进阶指令(重点)

    三.Linux进阶指令(重点) 1.df指令    作用:查看磁盘的空间 #df -h 选项:-h    表示以可读性较高的形式展示大小 2.free指令     作用:查看内存使用情况 #free ...

  7. mysql 多行(GROUP_CONCAT)和多列(CONCAT)的合并函数

    1,多行合并:把查询的一行或者多行进行合并. SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id ...

  8. PyCharm 服务器激活地址

    http://www.cnblogs.com/littlehb/p/7784517.html

  9. c#switch语句的用法

    switch条件语句是一种很常用的选择语句,它与if条件语句不同,它只针对某个表达式的值作出判断,从而决定执行哪一段代码. switch条件语句用到的关键字: switch case break de ...

  10. POIUtils 导出 poi Test 100w 600w 条数据

    依赖: <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-l ...