首页 > 代码库 > 事务及索引
事务及索引
1.有必要先介绍一下存储引擎
myisam 批量插入速度较快,不支持事务,锁表,全文索引支持
innoDB 批量插入较慢,支持事务,锁行,全文索引支持
事务特性:ACID
2.事务的语法:(存储引擎要用innodb)
start transaction ;
update ..;
update ..;
commit/rollback;
3.索引
主要作用:加快查询速度,降低增删改的速度, 分为哈希索引、二叉树索引
技巧:表的导入过程中乳沟整张表的导入,数据库会每插入一条记录更新一次索引,消耗比较大 可以先去掉索引 再导入数据 之后统一加索引,这样可以节省很多时间
3.1 分类
普通索引index:加快查询速度,
主键索引unique index:行上的值不能重复
唯一索引primary index: 不能重复 主键必然唯一,但唯一的不一定是主键
全文索引:fulltext index 在默认情况下,对中文意义不大 ;按行查询 select * from table_name where match(col_name) against (‘keyword‘);
3.2 基本操作
查看索引:show index from table
建立索引:alter table table_name add index/unique/fulltext index_name (column_name)
删除索引:alter table table_name drop index index_name
3.3 tips
1.不要过度索引,
2.索引列选择在查询频繁的类 where子句后的字段;
3.尽量索引散列值,过于集中的值不要索引,比如男女就意义不大
事务及索引