1.视图(重点

视图本质就是对查询的封装,定义视图,建议以v_开头

create view 视图名称 as select语句;

例:创建视图,查询学生对应的成绩信息

create view v_stu_sco as
select students.*,scores.score from scores
inner join students on scores.stuid=students.id;

查看视图:查看表会将所有的视图也列出来

show tables;

删除视图

dropview 视图名称;例:drop view v_stu_sco;

使用:视图的用途就是查询

select * from v_stu_score;

2.事务

事务(Transaction)是并发控制的基本单位。所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。

事务四大特性(简称ACID)

1.原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行

2.一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致

3.隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的

4.持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障

  • 查看表的创建语句show create table students;
  • 开启事务,命令如下:begin;
  • 提交事务,命令如下:commit;
  • 回滚事务,命令如下:rollback;

3.索引(重点

主键和唯一索引,都是索引,可以提高查询速度

主键是数据物理存储的位置

索引会单独创建一个目录,对应数据的位置

索引分单列索引和组合索引

单列索引,即一个索引只包含单个列,一个表可以有多个单列索引

组合索引,即一个索引包含多个列

语法

查看索引show indexfrom 表名;

创建索引

  • 如果指定字段是字符串,需要指定长度,建议长度与定义字段时的长度一致
  • 字段类型如果不是字符串,可以不填写长度部分

create index 索引名称 on 表名(字段名称(长度))

  • 删除索引:

drop index 索引名称 on 表名;

缺点

虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行INSERT、UPDATE和DELETE,因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件

  • 建立索引会占用磁盘空间的索引文件

示例

创建测试表testindex

create table test_index(titlevarchar(10));

向表中加入十万条数据

  • 创建存储过程proc_test,在存储过程中实现插入数据的操作
  • step1:定义分割符

delimiter //

  • step2:定义存储过程

create procedureproc_test()
begin
declare i int default 0;
while i < 100000 do
insert into test_index(title) values(concat('test',i));
set i=i+1;
end while;
end //

  • step3:还原分割符

delimiter ;

  • 执行存储过程proc_test

call proc_test();

12.MYSQL高级(二)相关推荐

  1. MySQL高级部分( 二: MySQL架构、引擎、索引)

    MySQL高级 二: MySQL架构.引擎.索引.事务 MySQL架构 MySQL 的完整架构图 各层介绍 连接层 服务层 存储引擎层 Pluggable Storage Engine 物理文件存储层 ...

  2. mysql高级篇(二)mysql索引优化分析

    mysql高级篇笔记 mysql高级篇(一)mysql的安装配置.架构介绍及SQL语句的复习. mysql高级篇(二)mysql索引优化分析. mysql高级篇(三)查询截取分析(慢查询日志).主从复 ...

  3. 高级查询(二)+php中文网,MySQL高级查询方法之记录查询

    欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 此文章主要向大家描述的是MySQL高级查询方法之记录查询的实际操作步骤,以及对其实际操作过程中要用到的代码的详细描述,以下 ...

  4. MySQL高级(一)

    MySQL高级(一)计划讲解的是索引,视图,存储过程和函数,触发器. 本次是在Linux上安装Mysql服务的,具体的安装连接请参照我的另一篇博客:https://blog.csdn.net/zeng ...

  5. 从前慢-Mysql高级及实战

    Mysql高级及实战 1 Linux 系统安装MySQL 1.1 下载Linux 安装包 https://dev.mysql.com/downloads/mysql/5.7.html#download ...

  6. MySQL高级查询语句——超详细,一篇就够了

    MySQL高级查询语句 一.MySQL进阶查询 1.1.按关键字排序--order by 1.2.对结果进行分组--group by 1.2.1.单个分组 1.2.2.分组结合order by使用 1 ...

  7. MySQL高级--2--黑马

    MySQL高级-2 一.MySQL存储引擎 1.MySQL体系结构 体系结构的概念 任何一套系统当中,每个部件都能起到一定的作用! MySQL的体系结构 体系结构详解 客户端连接 支持接口:支持的客户 ...

  8. MySQL高级-04-授课笔记

    MySQL高级-04-授课笔记 一.MySQL存储引擎 1.MySQL体系结构 体系结构的概念 任何一套系统当中,每个部件都能起到一定的作用! MySQL的体系结构 体系结构详解 客户端连接 支持接口 ...

  9. MySQL高级---04

    一.MySQL存储引擎 1.MySQL体系结构 体系结构的概念 任何一套系统当中,每个部件都能起到一定的作用! MySQL的体系结构 体系结构详解 客户端连接 支持接口:支持的客户端连接,例如C.Ja ...

最新文章

  1. LeetCode—笔记—51、N皇后——递归回溯,个人思路,简单易懂
  2. java中 抽象类+接口
  3. 调用Cython时报错: More than one filename match found for utility code Capsule
  4. 2d绘制 c# dx_C# DX 编程
  5. 201101shell脚本
  6. mysql+rownumber的用法_mysql中如何实现row_number
  7. 访问修饰符 c# 1613703072
  8. 【题解】Luogu P5360 [SDOI2019]世界地图
  9. DOCKER功能练习
  10. 服务器安装 accessdatabaseengine_.net IIS 服务器环境配置
  11. mysql的inndob引擎崩溃
  12. 【动画消消乐】HTML+CSS 自定义加载动画:清新折叠方块效果 063(附源码及原理详解)
  13. 几种网赚项目引流的方法
  14. HTTP基础知识你知道吗?
  15. 纺织品GRSlogo使用标准 GRS认证的详情概括
  16. 【云原生】第二篇--容器管理工具 Docker生态架构及部署
  17. python2中print不换行及print不换行且无空格写法
  18. c语言书面作业3,C语言程序设计
  19. 点到超平面的距离公式
  20. 强制应用横竖屏的简单设置

热门文章

  1. 在Ubuntu下运行 apt-get update命令后出现错误:
  2. 【java设计模式】【行为模式Behavioral Pattern】迭代器模式Iterator Pattern
  3. Bootstrap实现弹出框和提示框效果代码
  4. 如何参与一个GitHub开源项目
  5. 7.Reverse Integer (INT; Overflow)
  6. redis RDB持久化中save和bgsave区别
  7. UDT源码剖析(二):UDT自带例程recvfile注释
  8. STM32中C语言知识点:初学者必看,老鸟复习(长文总结)
  9. Adbshell相关命令
  10. MATLAB —— 绘图