萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL索引操作命令(創建索引、重建索引、查詢索引、刪除索引)

MySQL索引操作命令(創建索引、重建索引、查詢索引、刪除索引)

本篇文章主要是對MySQL索引操作方法做了一下總結,包括創建索引、重建索引、查詢索引、刪除索引的操作。以下所列示例中中 `table_name` 表示數據表名,`index_name` 表示索引名,column list 表示字段列表(如:`id`,`order_id`)。


1、創建索引

索引的創建可以在CREATE TABLE語句中進行,也可以單獨用CREATE INDEX或ALTER TABLE來給表增加索引。以下命令語句分別展示了如何創建主鍵索引(PRIMARY KEY),聯合索引(UNIQUE)和普通索引(INDEX)的方法。

mysql>ALTER TABLE `table_name` ADD INDEX `index_name` (column list);

mysql>ALTER TABLE `table_name` ADD UNIQUE `index_name` (column list);

mysql>ALTER TABLE `table_name` ADD PRIMARY KEY `index_name` (column list);

mysql>CREATE INDEX `index_name` ON `table_name` (column_list);

mysql>CREATE UNIQUE INDEX `index_name` ON `table_name` (column_list);

例如:

mysql>ALTER TABLE `article` ADD INDEX `id`;//給article表增加id索引

或者:

mysql>ALTER TABLE `article` ADD INDEX (`id`,`order_id`);給article表增加id索引,order_id索引

1、重建索引命令

 mysql> REPAIR TABLE tbl_name QUICK;


2、查詢數據表索引
 mysql> SHOW INDEX FROM tbl_name;

 
3、創建索引(PRIMARY KEY,INDEX,UNIQUE)支持創建主鍵索引,聯合索引和普通索引命令

 
  mysql>ALTER TABLE tbl_name ADD INDEX index_name (column list);
  mysql>ALTER TABLE tbl_name ADD UNIQUE index_name (column list);
  mysql>ALTER TABLE tbl_name ADD PRIMARY KEY index_name (column list);

4、刪除索引(PRIMARY KEY,INDEX,UNIQUE)

支持刪除主鍵索引,聯合索引和普通索引命令

 
   mysql>ALTER TABLE tbl_name DROP INDEX index_name (column list);
   mysql>ALTER TABLE tbl_name DROP UNIQUE index_name (column list);
   mysql>ALTER TABLE tbl_name DROP PRIMARY KEY index_name (column list);

其中 tbl_name 表示數據表名,index_name 表示索引名,column list 表示字段列表


在前面的三條語句中,都刪除了table_name中的索引index_name。而在最後一條語句中,只在刪除PRIMARY KEY索引中使用,因為一個表只可能有一個PRIMARY KEY索引,因此也可不指定索引名。如果沒有創建PRIMARY KEY索引,但表具有一個或多個UNIQUE索引,則MySQL將刪除第一個UNIQUE索引。如果從表中刪除某列,則索引會受影響。對於多列組合的索引,如果刪除其中的某列,則該列也會從索引中刪除。如果刪除組成索引的所有列,則整個索引將被刪除。

copyright © 萬盛學電腦網 all rights reserved