mysql索引,mysql建立索引,mysql刪除索引
1.在關聯式資料庫中,索引是一種與表相關的資料庫結構,它可以使對應於表的SQL語句執行得更快。今天就簡單地給大家示範一下mysql中索引的創建,查詢以及刪除。
2.首先隨便建立一張表,SQL語句如下:
CREATE TABLE IF NOT EXISTS `student` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号', `name` varchar(64) NOT NULL DEFAULT '' COMMENT '姓名', `sex` tinyint(1) NOT NULL COMMENT '性别', `age` tinyint(2) NOT NULL COMMENT '年龄', `class` varchar(64) NOT NULL DEFAULT '' COMMENT '班级', PRIMARY KEY (`id`) ) ENGINE=MYISAM DEFAULT CHARSET=utf8 COMMENT='学生表';
3.可以看到,在建立表格的SQL語句中,已經建立了一個主鍵索引,此時檢視表中索引:SHOW INDEX FROM `student`,結果如圖所示:
#4.當然,我們也可以在基礎上加入別的索引,比如說唯一索引。假設每個學生的名字是不可以重複的,那麼就可以在name字段上添加一個唯一索引:
ALTER TABLE `student` ADD UNIQUE `stu_name` (`name`);
此時,再次查看表中索引,SHOW INDEX FROM `student`,結果如圖所示:
5.然後再給班級新增一個普通索引:
ALTER TABLE `student` ADD INDEX `stu_class` (`class`);
檢視表中索引,SHOW INDEX FROM `student`,結果如圖所示:
6.接下來是刪除索引,刪除掉唯一索引和普通索引:
ALTER TABLE `student` DROP INDEX `stu_name`; ALTER TABLE `student` DROP INDEX `stu_class`;
然後查看表中索引,SHOW INDEX FROM `student`,結果如圖所示:
#7.這時,就剩下一個主鍵索引了,如果直接刪除的話將會報錯:
ALTER TABLE `student` DROP PRIMARY KEY;
原因:因為主鍵索引關聯的id鍵為自動增長;
8.需要先將id鍵的自動增長取消:
ALTER TABLE `student` MODIFY `id` int(10) NOT NULL COMMENT '学号'
再次執行:
ALTER TABLE `student` DROP PRIMARY KEY;
查看表中索引,SHOW INDEX FROM `student`,表中已經沒有索引啦
以上是MySQL如何建立和刪除索引?的詳細內容。更多資訊請關注PHP中文網其他相關文章!