国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL索引操作命令詳解

2024-07-24 12:52:49
字體:
來源:轉載
供稿:網友

創建索引:

MySql創建索引的語法如下:

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [USING index_type] ON table_name (index_col_name,...)

其中對應的語法變量信息如下:
[UNIQUE|FULLTEXT|SPATIAL]:中括號中的三個關鍵字表示創建的索引類型,他們分別表示唯一索引、全文索引、空間索引三種不同的索引類型。如果我們不指定任何關鍵字,則默認為普通索引。

index_name:表示索引的名字,由用戶自行定義,以便以后對該索引進行修改管理操作。

index_type:表示索引的具體實現方式,在MySql中,有兩種不同形式的索引----BTREE索引和HASH索引。在存儲引擎為MYISAM和INNODB的表中只能使用BTREE,其默認值就是BTREE;在存儲引擎為MEMORY或者HEAP的表中可以使用HASH和BTREE兩種類型的索引,其默認值是HASH。

index_col_name:表示需要創建索引的字段名稱,我們還可以針對多個字段創建復合索引,只需要在多個字段名稱之間以英文逗號隔開即可。

此外,對于char或varchar類型的字段,我們還可以只使用字段內容前面的一部分來創建索引,只需要在對應的字段后面加上形如(length)的指令即可,表示只需要使用字段內容前面的length個字符來創建索引。

CREATE INDEX idx_user_username ON user (username(6));

由于多數字段的前6個字符通常不同,所以此索引不會比使用字段的全部內容創建的索引速度慢很多。另外,使用字段的一部分創建索引可以使索引文件大大減小,從而節省了大量的磁盤空間,有可能提高INSERT操作的速度。

必須注意的是:在MySql中,對已TEXT和BLOG這種大數據類型的字段,必須給出前綴長度(length)才能成功創建索引。

上述創建索引的語法還具有以下變體:

ALTER TABLE table_name ADD [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name (index_col_name,...) [USING index_type]

在MySql中,只有當表的存儲引擎為MYISAM,INNODB和BDB類型時,你才能向具有NULL值的列或者數據類型為TEXT或BLOB的列添加索引。

刪除索引:
在MySql中刪除索引的方法非常簡單,其完整語法如下:

ALTER TABLE table_name DROP INDEX index_name;

修改索引:

在MySql中并沒有提供修改索引的直接指令,一般情況下,我們先刪除原索引,再根據需要創建一個同名的索引,從而變相地實現修改索引的操作。

//先刪除索引ALTER TABLE table_name DROP INDEX index_name;//創建同名的索引CREATE INDEX index_name ON table_name (index_col_name,...);

查看索引:

在MySql中,要查看某個數據庫表中的索引頁非常簡單,只需要使用以下兩個命令中的任意一種即可:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岑巩县| 杂多县| 连平县| 竹溪县| 孝感市| 郧西县| 库尔勒市| 通河县| 高碑店市| 京山县| 若尔盖县| 章丘市| 嘉祥县| 遂平县| 桃源县| 女性| 威信县| 金溪县| 绥棱县| 大关县| 北辰区| 蓬莱市| 江达县| 山东省| 阳信县| 加查县| 石阡县| 阜城县| 莒南县| 汾西县| 辽阳县| 杂多县| 青阳县| 沈阳市| 甘南县| 莎车县| 辽中县| 容城县| 双辽市| 开远市| 潼关县|