码迷,mamicode.com
首页 > 数据库 > 详细

MySQL数据库(5)

时间:2018-12-02 20:37:20      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:插入数据   效率   显示   支持   特性   目录   nbsp   持久性   com   

事务:

事务四大特性(简称ACID):原子性(Atomicity);一致性(Consistency);隔离性(Isolation);持久性(Durability)

 

 开启事务: begin;

 当事务打开的时候,在事务内部进行的逻辑操作不会对表本身有任何影响,只有在事务提交的时候才会显示出来.

 

事务回滚: rollback;

在事务没有提交之前,使用rollback可以将上一条逻辑运算给pass掉,即上一条逻辑操作不会产生任何作用.

 

提交事务: commit;

 在提交事务之后,在事务内执行的逻辑操作会对表内数据进行修改

 

索引:

 

索引是什么:

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度

 

索引目的:

索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者ze开头的单词呢?是不是觉得如果没有索引,这个事情根本无法完成?

 

要注意的是,建立索引会占用磁盘空间,建立太多的索引将会影响更新和插入的速度,因为它需要同样更新每个索引文件。对于一个经常需要更新和插入的表格,就没有必要为一个很少使用的where字句单独建立索引了,对于比较小的表,排序的开销不会很大,也没有必要建立另外的索引。

 

索引类型:   主键,唯一,普通,联合

 

 

数据库引擎:

 

InnoDB:支持事务处理,支持外键,并发控制。如果需要对事务的完整性要求比较高(比如银行),要求实现并发控制(比如售票),那选择InnoDB有很大的优势。如果需要频繁的更新、删除操作的数据库,也可以选择InnoDB,因为支持事务的提交(commit)和回滚(rollback)。

 

MyISAM:插入数据快,空间和内存使用比较低。如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实现处理高效率。如果应用的完整性、并发性要求比较低,也可以使用。

 

MEMORY:所有的数据都在内存中,数据的处理速度快,但是安全性不高。如果需要很快的读写速度,对数据的安全性要求较低,可以选择MEMOEY。它对表的大小有要求,不能建立太大的表。所以,这类数据库只使用在相对较小的数据库表。

MySQL数据库(5)

标签:插入数据   效率   显示   支持   特性   目录   nbsp   持久性   com   

原文地址:https://www.cnblogs.com/onerose/p/10054978.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!