7.3.4 如何创建索引
2025年09月21日
7.3.4 如何创建索引
在MySQL中创建表的时候,可以直接创建索引。基本的语法格式如下:
其中各参数的含义如下:
➢ UNIQUE:可选。表示索引为唯一性索引。
➢ FULLTEXT;可选。表示索引为全文索引。
➢ SPATIAL:可选。表示索引为空间索引。
➢ INDEX和KEY:用于指定字段为索引,两者选择其中之一就可以了,作用是一样的。
➢ 索引名:可选。给创建的索引取一个新名称。
➢ 字段名1:指定索引对应的字段的名称,该字段必须是前面定义好的字段。
➢ 长度:可选。指索引的长度,必须是字符串类型才可以使用。
➢ ASC:可选。表示升序排列。
➢ DESC:可选。表示降序排列。
如果在创建索引时没写索引名称,MySQL会自动用字段名作为索引名称。
在执行CREATE TABLE语句时可以创建索引,也可以单独用CREATE INDEX或ALTER TABLE来为表增加索引。
1.ALTER TABLE
ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引。
其中table_name是要增加索引的表名,column_list指出对哪些列进行索引,多列时各列之间用逗号分隔。索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引。
2.CREATE INDEX
CREATE INDEX可对表增加普通索引或UNIQUE索引。
table_name、index_name和column_list具有与ALTER TABLE语句中相同的含义,索引名不可选。另外,不能用CREATE INDEX语句创建PRIMARY KEY索引。