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 语句
mysql学习笔记--数据库视图的更多相关文章
- MySQL学习笔记-数据库文件
数据库文件 MySQL主要文件类型有如下几种 参数文件:my.cnf--MySQL实例启动的时候在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还介绍了参数类 ...
- MySQL学习笔记-数据库内存
数据库内存 InnoDB存储引擎内存由以下几个部分组成:缓冲池(buffer pool).重做日志缓冲池(redo log buffer)以及额外的内存池(additional memory pool ...
- MySQL学习笔记-数据库后台线程
数据库后台线程 默认情况下讲述的InnoDB存储引擎,以后不再重复声明.后台线程有7个--4个IO thread,1个master thread,1个锁监控线程,1个错误监控线程.IO thread的 ...
- MySQL学习笔记之视图
视图是对磁盘上保存的表数据的抽象,即抽取一个表或多个表的部分行或列的数据,展示给使用者. 首先列举下MySQL中最简单的对视图操作的语法: 1.创建视图: create view 视图名 as sel ...
- mysql学习笔记--数据库操作
一.显示数据库 show databases; 二.创建数据库 create database [if not exists] 数据库名 [字符编码] 注意: a. 如果已经存在数据库再创建会报错 b ...
- MYSQL学习笔记——数据库范式及MYSQL优化整体思路
一.数据库范式 为了建立冗余较小.结构合理的 ...
- mysql学习笔记--数据库索引
一.索引的优点:查询速度快 二.索引的缺点: 1. 增.删.改(数据操作语句)效率低了 2. 索引占用空间 三.索引类型: 1. 普通索引 2. 唯一索引(唯一键) 3. 主键索引:只要主键就自动创建 ...
- mysql学习笔记--数据库单表查询
一.查询语句 1. select [选项] 列名 [from 表名] [where 条件] [order by 排序] [group by 分组] [having 条件] [limit 限 ...
- mysql学习笔记--数据库设计
一.数据库基本概念 1. 关系:两个表的公共字段 2. 行:也称记录,也称实体 3. 列:也称字段,也称属性 4. 数据冗余:相同的数据存在不同的地方. 注意:冗余只能减少,不能杜绝. 减少冗余,只能 ...
随机推荐
- MacBook Home End
For the Home command, press down the Fn + Left Arrow keystroke combination. For the End command, pre ...
- 关于matlab2018a版本错误使用 svmclassify 分类器
当我们照常使用分类器函数svmclassify时,2018版的matlab会报出以下错误: 解决办法: 1,下载libsvm(一般下载最新版本就ok了)包,并将其添加至matlab的toolbox文件 ...
- spring boot 接口返回值去掉为null的字段
现在项目都是前后端分离的,返回的数据都是使用json,但有些接口的返回值存在 null或者"",这种字段不仅影响理解,还浪费带宽,需要统一做一下处理,不返回空字段,或者把NULL转 ...
- 转载及总结:cron表达式详解,cron表达式写法,cron表达式例子
cron表达式格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}例 "0 0 12 ? * WED" 在每星期三下午12:00 执行(年份通常 ...
- 01 HTML快速入门
HTML CSS JS (网络三剑客) 上网就是下载网页 浏览器 就是一个解释器 CS模式--------client serverbs模式--------browser server HTML是什么 ...
- JSON语法
JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. ...
- [Nginx]Nginx的一些概念
Nginx 关注:一.性能 1)高并发下资源不浪费在处理进程切换休眠等,保持高的吞吐量 2)高并发下如何保持平均时延低 3)提高网络效率,例如长连接代替短链接,高压缩算法提高信息量,使用缓存减少 ...
- Tomcat(免安装版)的安装与配置【转】
1.下载 到Apache的官方网站,我们可以很容易找到Tomcat的下载地址,如: http://tomcat.apache.org/download-60.cgi 在这里我们可以下载到Tomcat的 ...
- python大法好——mysql防注入
MySQL 及 SQL 注入 如果您通过网页获取用户输入的数据并将其插入一个MySQL数据库,那么就有可能发生SQL注入安全的问题. 本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入 ...
- Zabbix监控中,使用的比较好的动作信息模板
https://www.cnblogs.com/songxingzhu/p/7299377.html 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NA ...