1 mysql 数据库操作

插入单行数据

insert into table_name set id=10,name='lijingshan';

插入多行数据 【基本都用这个】

insert into table_name [(字段1,字段2,字段3)] values (值1,值1,值1),(值2,值2,值2);

更新

删除

2 mysql 索引

什么是索引

索引是帮助mysql高效获取数据的数据结构

索引在存储引擎中实现,每种存储引擎的索引都一定要完全相同,每种索引存储引擎的支持也不一定相同

如果没有索引的话,数据表就从头读到尾部。【全表扫描】

二叉树算法,首先排序。查找的时候速度就会比较快。

索引的分类

普通索引和唯一索引

普通索引是mysql的基本索引类型

唯一索引对应的值必须唯一,但允许空值,如果是组合索引,则列值的组合必须唯一

主键索引是一种特殊的唯一索引,不允许有空值

单列索引和组合索引

单列索引指只包含一个列的索引,一个表中可以有多个单列索引

组合索引指的是表的多个字段组合上创建的索引,遵循做前缀集合。

全文索引

fulltext类型索引,可以在 char varchar或者 text 类型的列上创建

仅myisam支持,支持拉丁语系,不太支持中午,用第三方产品做中文索引

空间索引

空间类型的数据字段建立索引

索引的设计原则

索引并非越多越好

数据量不多不需要建立索引

列中的值变化不多也不需要建立索引

经常排序和分组的数据列要建立索引

唯一性约束对应使用唯一性索引。

3 索引的创建和删除  explain 分析语句执行

创建普通索引

primary key 主键

index(name) 创建普通索引

show create table t_1\G

创建唯一性索引

uniqueindex 'id_in' ('id')  语法 索引名称 索引列

创建单列索引

index 'name_in' ('name' (10)) 10代表索引的长度10


创建组合索引

怎么创建 你能告诉我吗

mutiindex

index 'Multi_in' (id,name,age(100))


全文索引

fulltext index 'info_in' (info)


修复和删除索引


alter 语句

alter table t1 add index nameidx (name(20));

alter table t1 drop index nameidx


演示

create table t5(id int,name varchar(10));


4 索引测试

100万行数据性能测试。

准备环境

1 创建测试数据表

在系统提示符下面执行100万行语句

bash 下面执行