MySQL学习10:视图&事务&索引
Posted Z|Star
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL学习10:视图&事务&索引相关的知识,希望对你有一定的参考价值。
视图 View
视图的作用
视图可以看作是一个虚拟的表,可将一些表的关系结合起来进行查看,并实时更新(表的数据变化,视图也会随之变化,因此视图并非表的备份)。
视图用来方便查看,因此只具备查看的功能。不能对视图数据进行修改,视图不是真实的表。
视图的定义
建议以v_开头
create view 视图名称 as select语句;
查看视图
show tables;
使用视图
只能查询:
select * from v_view;
删除视图
drop view 视图名称;
事务
事务的作用
在订单场景中,若几个订单同时进行,需要多同一个账户进行多次操作。这时候需要用到事务。
事务的特点:开始事务后,记录一系列操作,直到事务提交commit之后所有操作才生效。否则,所有操作均不生效。
事务的四大特性ACID
下面的内容根据我自己的理解编写。
1.原子性(Atomicity)
事务作为最小工作单元,里面的内容要么全做,要么全不做,不能只做一部分。
2.一致性(Consistency)
数据库总是从一个一致性状态切换到另一个一致性状态。在事务提交之前,数据库和事务内的数据保持一致,提交之后也保持一致。
3.隔离性(Isolation)
一个事务在提交之前的修改对其它事务不可见。两个客户端对同一条记录进行操作时,只有先进行操作的客户端提交了记录,另一个客户端提交的记录才会生效,并且是叠加的效果而不是覆盖的效果。
4.持久性(Durability)
一旦事务提交,修改永久保存到数据库。
开启事务
begin;
或者
start transaction;
提交事务
commit;
回滚事务
rollback;
索引 Index
索引目的
类似字典前的目录,索引用来加快查找的速度。
索引原理
基层原理不作深究,表面上索引就是加速查找用到的树结构。
查看索引
show index from 表名
创建索引
若指定字段是字符串,需要指定长度,最好长度保持一致。
如不是字符串,不用写长度部分。
create index 索引名称 on 表名(字段名称(长度));
删除索引
drop index 索引名称 on 表名;
索引注意事项
1.主键,外键默认就是索引。
2.不需要频繁查找的字段无需建立索引。索引过多会影响数据更新的速度(更新数据的同时要更新索引)
以上是关于MySQL学习10:视图&事务&索引的主要内容,如果未能解决你的问题,请参考以下文章