一.视图view,是一种结构(有行有列)但没结果(结构中不存放真实数据)的虚拟表,虚拟表中的结构不是自己定

义而是由基表产生(视图的的数据来源)

1.创建视图:create view 视图名字 select 语句(可以是普通select语句、连接查询、联合查询、子查询);

1):创建单表视图:create view stu as select * from student;

2):创建多表视图(视图基表多张的情况下:字段名不能重复): create view class as select s.*,

c.teacher,c.room from student as s left join my_class as c on s.id=c.id;

2.查看视图结构:desc 视图名称/show tables/show create view class;

3.使用视图:select * from 视图名称;

4.修改视图:alter view  as 新视图名 select 语句;

5.删除视图:drop view 视图名称;

6.视图的意义:

1):节省sql语句:可以用视图保存复杂的sql语句

2):视图安全,视图主要针对数据查询,如果视图结构进行处理(删除),不会影响基表数据(相对安全)。

3):视图往往在大型项目、多系统中使用,可以对外提供必要的数据

4):视图可以提供友好型,可以专门设计针对不同的需求。

5):视图可以更好的进行权限控制

7.视图数据操作

1):新增数据(针对视图):不能向多表视图插数据,视图如果没有包含基表中的非空字段则不能插入成功。

insert into stu values(6,'leetcode','male',24);

2):删除数据:多表试图不能删除数据

delete from stu1 where id=1;

3):更新数据:无论单表还是多表都可以更新视图

update stu_class set sex='male' where id=5;

限制更新

create view stu2 as select * from student where age>30 with check option;

4)视图算法:系统对视图及外部查询select的一种解析方式

1.undefined:未定义(系统默认),这不是一种实际的算法,告诉系统没有定义算法,系统随机选择

2.temptable:临时算法,系统先执行视图的select语句,后执行外部的查询语句。

create algorithm=temptable view stu4 as  select * from student order by height desc;

3.merge(效率高,常态):合并算法,系统应先将视图select语句和外部查询语句合并后执行查询。

总结:如果视图select语句中包含(where、group by、having、order by、limit)建议使用temptable

二.数据备份与还原

1.概念:备份将当前数据或记录保留,还原将以保留的数据恢复到对应的表中。

2.myisam和innodb:数据存储对比

1):innodb只有表结构数据全部存储在ibadata1文件中

2):myisam将表、数据、索引分别单独存储。直接将三个文件放在对应的数据库下即可使用

3.数据库高级备份:自己定义字段和行的处理方式

1.语法:select   */字段列表   into outfile 文件路径   files 字段处理 lines 行处理    from 数据源;

4.Sql备份及还原

1) 备份:mysqldump -u root -p 数据库 表 > E:\sql\student.sql;

2) 还原:mysql -u root -p 数据库 <E:\sql\student.sql; 或 source E:\sql\student.sql

Mysql视图与数据备份相关推荐

  1. MySQL操作之数据备份与还原

    序号 类型 地址 1 MySQL MySQL操作之概念.SQL约束(一) 2 MySQL MySQL操作之数据定义语言(DDL)(二) 3 MySQL MySQL操作之数据操作语言(DML)(三) 4 ...

  2. mysql数据库视图备份_数据库篇-mysql详解( 六 )之视图与数据备份

    data.png 一 : 视图 视图: view, 是一种有结构(有行有列)但是没结果(结构中不真实存放数据)的虚拟表, 虚拟表的结构来源不是自己定义, 而是从对应的基表中产生(视图的数据来源). ( ...

  3. mysql六:数据备份、pymysql模块

    阅读目录 一 MySQL数据备份 二 pymysql模块 一 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如Windows. #2. 逻辑备 ...

  4. MySql笔记之数据备份与还原

    MySQL数据备份.还原与迁移 一.数据备份------mysqldump 1.语法: mysqldump -u user(用户名)-h host(登录用户的主机名称)-p password(登录密码 ...

  5. mysql 8.0数据备份恢复_第7章 备份和恢复

    ## 目录 - 备份和恢复类型 - 数据库备份方法 - 例备份和恢复策略 - 使用mysqldump进行备份 - 使用二进制日志进行 - 点时间(增量)恢复 - MyISAM表维护和崩溃恢复 备份数据 ...

  6. java 备份 mysql 日志_MySQL 数据备份与还原

    点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:逆心 链接:https://www.cnblogs.com/kissdodog 公众 ...

  7. mysql视图中数据如何修改_怎么修改Mysql数据表中的视图

    本篇文章主要给大家介绍mysql数据表中怎么进行修改视图的操作. 关于mysql视图的基础知识,在之前的文章中也给大家详细介绍过了.这里我们再给大家先简单介绍下mysql视图. 通俗的说,视图是由SE ...

  8. commvault备份mysql数据库_Commvault数据备份恢复平台-功能测试报告.pdf

    Commvault 软件功能测试报告 Commvault 测试报告 Commvault 数据备份恢复平台 功能测试报告 第 1 页 Commvault 软件功能测试报告 目 录 第 1 章 测试概述 ...

  9. mysql 8.0数据备份恢复_MySQL 8.0 增强逻辑备份恢复工具介绍-爱可生

    作者:杨涛涛 资深数据库专家,专研 MySQL 十余年.擅长 MySQL.PostgreSQL.MongoDB 等开源数据库相关的备份恢复.SQL 调优.监控运维.高可用架构设计等.目前任职于爱可生, ...

最新文章

  1. sqlite3 解决并发读写冲突的问题
  2. 配置React的Babel 6和Webpack 2环境
  3. 微软Citrix合作虚拟化联手对抗VMware
  4. JAVA之JVM GC 机制与性能优化
  5. AutoHotkey 使用笔记
  6. Remote PC另类用法:远程控制
  7. 如何用架构师思维解读区块链技术?
  8. 关于同步VSS服务器上的代码发生Eclipse里面的项目全部不见了
  9. oracle中alter用法,将oracle的create语句更改为alter语句使用
  10. CocosCreator2.1.0渲染流程与shader
  11. 一些不错的计算机书籍
  12. 平凡函数依赖是什么?
  13. ArchLinux借助Winetricks-zh安裝WineQQ8.1
  14. leetcode/力扣 回溯算法大总结,BAT程序员完整学习手册开放下载!!
  15. ES查询-空字段和非空字段结果
  16. 「津津乐道播客」#342 编码人声:跟「老」程序员们聊聊编程的历史与未来
  17. TortoiseGit小乌龟安装配置及使用
  18. 大数据学习:大数据就业前景和就业方向
  19. 粉丝测试题的软件,套路得粉丝的答题类H5推荐
  20. java小学生加减法_Java实现随机出题,10道10以内加减法计算代码实例|chu

热门文章

  1. 判断js变量是否定义,
  2. img图片下多余空白的BUG解决方案
  3. HDU 5389 Zero Escape
  4. 奇怪吸引子---LuChen
  5. 重装oracle12c_记一次win server 2012上oracle12c的安装过程
  6. anaconda怎么使用python包_Anaconda中python包的介绍与使用方法
  7. corspost请求失败_vue项目CORS跨域请求500错误,post请求变options请求
  8. wsl ubuntu 版本_让Ubuntu滚动更新
  9. mvn导入jar到库命令
  10. 电脑连接到网络显示未连接到服务器未响应,电脑dns服务器未响应怎么办?