mysql刪除index索引的方法:1.使用DROP INDEX語句刪除index索引;2、使用ALTER TABLE語句刪除index索引。
本文操作環境:Windows7系統、Mysql5.7.14版、Dell G3電腦。
mysql怎麼刪除index索引?
刪除索引是指將表中已經存在的索引刪除掉。不用的索引建議進行刪除,因為它們會降低表的更新速度,影響資料庫的效能。對於這樣的索引,應該將其刪除。
在 MySQL 中修改索引可以透過刪除原索引,再根據需要建立一個同名的索引,從而實現修改索引的操作。
基本語法
當不再需要索引時,可以使用 DROP INDEX 語句或 ALTER TABLE 語句來刪除索引。
1) 使用DROP INDEX 語句
語法格式:
DROP INDEX <索引名> ON <表名>
語法說明如下:
<索引名>:要删除的索引名。 <表名>:指定该索引所在的表名。
2) 使用ALTER TABLE 語句
根據ALTER TABLE 語句的語法可知,該語句也可以用來刪除索引。具體使用方法是將 ALTER TABLE 語句的語法中部分指定為下列子句中的某一項。
DROP PRIMARY KEY:表示删除表中的主键。一个表只有一个主键,主键也是一个索引。 DROP INDEX index_name:表示删除名称为 index_name 的索引。 DROP FOREIGN KEY fk_symbol:表示删除外键。
注意:如果刪除的列是索引的組成部分,那麼在刪除該列時,也會將該列從索引中刪除;如果組成索引的所有列都被刪除,那麼整個索引將被刪除。
刪除索引
【實例 1】刪除表 tb_stu_info 中的索引,輸入的 SQL 語句和執行結果如下所示。
mysql> DROP INDEX height -> ON tb_stu_info; Query OK, 0 rows affected (0.27 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> SHOW CREATE TABLE tb_stu_info\G *************************** 1. row *************************** Table: tb_stu_info Create Table: CREATE TABLE `tb_stu_info` ( `id` int(11) NOT NULL, `name` char(45) DEFAULT NULL, `dept_id` int(11) DEFAULT NULL, `age` int(11) DEFAULT NULL, `height` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=gb2312 1 row in set (0.00 sec)
【實例 2】刪除表 tb_stu_info2 中名稱為 id 的索引,輸入的 SQL 語句和執行結果如下所示。
mysql> ALTER TABLE tb_stu_info2 -> DROP INDEX height; Query OK, 0 rows affected (0.13 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> SHOW CREATE TABLE tb_stu_info2\G *************************** 1. row *************************** Table: tb_stu_info2 Create Table: CREATE TABLE `tb_stu_info2` ( `id` int(11) NOT NULL, `name` char(45) DEFAULT NULL, `dept_id` int(11) DEFAULT NULL, `age` int(11) DEFAULT NULL, `height` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=gb2312 1 row in set (0.00 sec)
推薦學習:《mysql影片教學》
以上是mysql怎麼刪除index索引的詳細內容。更多資訊請關注PHP中文網其他相關文章!