MySql中的索引
索引就是数据库内部对某个表的所有数据预先进行的某种排序,以便于后面的快速查询。
作用:可以极大的加快数据的查询速度
通常所谓的建立索引,就是指定一个表的某个或某些字段作为“索引数据字段”就可以了,形式为:
索引类型(要建立的索引的字段名)
参考上一篇博客中提到的建表语句:
create table [if not exists] 表名 (字段1,字段2……[,索引1,索引2,……])[表选项1,表选项2,……]
索引的类型:
普通索引: key(字段名)含义:就是一个索引,没有其他作用,只能加快查找速度
唯一索引: unique key(字段名) 含义:是一个索引,而且还可以设定其字段的值不能重复(唯一性),唯一索引可以为空(null)
主键索引: primary key (字段名)含义:是一个索引,而且,还可以区分该表中的任意一行数据的作用(不能为空)
全文索引: fulltext (字段名)
外键索引: foreign key(字段名) references 其他表(对应其他表中的字段名)
示例创建索引的语法:
create table tab_index(id int auto_increment, user_name varchar(20), email varchar(50), key(email), primary key(id), unique key(user_name) );