• mysql学习笔记--数据库视图


    一、视图

      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 语句

  • 相关阅读:
    反转句子
    算法和数据操作-查找和排序
    算法和数据操作-递归和循环
    数据结构-树
    数据结构-栈和队列
    Spring的循环依赖
    关于mybatis的执行流程和源码
    JVM之了解JVM的结构和加载机制
    多线程之(线程管理)
    Spring容器创建过程
  • 原文地址:https://www.cnblogs.com/DjanFey/p/10695796.html
Copyright © 2020-2023  润新知