MySQL中给字段创建四种不同类型索引的语法:
第一种(ALTER TABLE)
1、添加主键
ALTER TABLE tbl_name ADD PRIMARY KEY (col_list);
2、添加唯一索引
ALTER TABLE tbl_name ADD UNIQUE index_name (col_list);
3、添加普通索引
ALTER TABLE tbl_name ADD INDEX index_name (col_list);
4、添加全文索引
ALTER TABLE tbl_name ADD FULLTEXT index_name (col_list);
第二种创建索引(create (unique) index)
create (unique) index 索引名 on 表名(列名)
create unique index uniq_idx_firstname on actor(first_name);
create index idx_lastname on actor(last_name);
删除索引
DROP INDEX index_name ON tbl_name;
ALTER TABLE tbl_name DROP INDEX index_name;
ALTER TABLE tbl_name DROP PRIMARY KEY;
显示索引信息
SHOW INDEX FROM table_name\G
附: 两者区别
众所周知,MySQL创建索引有两种语法,即: ALTER TABLE HeadOfState ADD INDEX (LastName, FirstName); CREATE INDEX index_name HeadOfState (LastName, FirstName); 那么,这两种语法有什么区别呢?
1、CREATE INDEX必须提供索引名,对于ALTER TABLE,如果你不提供,将会自动创建;
2、CREATE INDEX一个语句一次只能建立一个索引,ALTER TABLE可以在一个语句建立多个,如:
ALTER TABLE HeadOfState ADD PRIMARY KEY (ID), ADD INDEX (LastName,FirstName);
3、只有ALTER TABLE 才能创建主键。
|