创建一个索引

创建索引的语法是:

复制代码代码如下所示:

创造独特的| |空间} {全文索引index_name

使用index_type } {

在tbl_name(index_col_name,…)



index_col_name:

col_name { { }(长度)| ASC DESC }



对于CHAR和VARCHAR列,索引可以与列的一部分创建的。在创建索引的时候,这个col_name(长度)的语法是用来索引的前缀,前缀包括每个列值的第一个字符长度。BLOB和文本的列也可以被索引,但前缀长度必须给予。

这里给出的语句用于创建一个索引,该索引使用列名的前10个字符。

复制代码代码如下所示:

创建客户指标part_of_name(名称(10));



由于大多数名称的前10个字符通常是不同的,所以这个索引不会比使用列的全名创建的索引慢得多。此外,使用列的索引部分可以大大减少索引文件,从而节省大量的磁盘空间,并提高插入操作的速度。

前缀最长255字节。为MyISAM和InnoDB表,前缀最长1000字节。注意字节前缀的长度,并在CREATE INDEX语句指的是字符数的前缀的长度。使用多字节字符集的列,这是对的指定列的前缀长度考虑。

在MySQL:

当你使用的是MyISAM,InnoDB和BDB表,类型,您可以添加索引与空值的列。

当你使用的是MyISAM,BDB,或InnoDB表类型,您可以添加索引到BLOB或文本列。

一个index_col_name协议可以结束与ASC或DESC。这些关键词可以在未来扩展到指定的递增或递减的指数值存储。目前,这些关键词进行分析,但忽视;指数值存储在一个递增的顺序。

部分存储引擎允许索引类型被指定在创建索引的时候,这个index_type指定语句的语法是用type_name.the type_name值由不同的存储引擎支持已在下表中显示的列。如果有多个索引类型,第一类是默认值时没有index_type指定。







存储引擎



允许索引类型





MyISAM



B树





InnoDB



B树





内存/堆



哈希,BTREE






实例:

复制代码代码如下所示:

创建表查找(id int)引擎=内存;

创建索引id_index使用B树查找(ID);



type_name型可用于使用type_name指定索引类型的同义词。然而,使用是首选的格式。此外,在指标规范的语法,在指数型不使用类型的索引名称。这是因为,不同的使用类型不预订的话,那么它将被视为指标名称。

如果指定的索引类型在给定存储引擎中无效,但还有其他适合于引擎使用且不会影响查询功能的索引类型,则引擎应使用此类型。

全文索引只能索引到CHAR,VARCHAR和文本列,只能在MyISAM表编制。

空间索引只能索引空间栏,只能在MyISAM表的编制。

使用更改方法创建索引

复制代码代码如下所示:

修改表table_name添加索引index_name(column_list);

修改表table_name添加独特的(column_list);

修改表table_name添加主键(column_list);



查询索引

复制代码代码如下所示:

显示指数从table_name;



删除索引

复制代码代码如下所示:

在table_name下降指数index_name;

修改表的索引index_name table_name;

修改表的主键table_name滴;



前两个语句中,在table_name指数index_name删除。在最后陈述时,它只用于主键索引删除,因为一个表只能有一个主键索引,所以它不需要指定索引名称。