欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL索引操作命令小結

 更新時間:2014年12月02日 09:48:39   投稿:junjie  
這篇文章主要介紹了MySQL索引操作命令小結,本文講解了創(chuàng)建索引、查詢索引、刪除索引等內容,需要的朋友可以參考下

創(chuàng)建索引

創(chuàng)建索引的語法是:

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
  [USING index_type]
  ON tbl_name (index_col_name,...)
 
index_col_name:
  col_name [(length)] [ASC | DESC]

對于CHAR和VARCHAR列,只用一列的一部分就可創(chuàng)建索引。創(chuàng)建索引時,使用col_name(length)語法,對前綴編制索引。前綴包括每列值的前l(fā)ength個字符。BLOB和TEXT列也可以編制索引,但是必須給出前綴長度。

此處展示的語句用于創(chuàng)建一個索引,索引使用列名稱的前10個字符。

CREATE INDEX part_of_name ON customer (name(10));

因為多數名稱的前10個字符通常不同,所以此索引不會比使用列的全名創(chuàng)建的索引速度慢很多。另外,使用列的一部分創(chuàng)建索引可以使索引文件大大減小,從而節(jié)省了大量的磁盤空間,有可能提高INSERT操作的速度。

前綴最長為255字節(jié)。對于MyISAM和InnoDB表,前綴最長為1000字節(jié)。注意前綴的限長以字節(jié)計,而CREATE INDEX語句中的前綴長度指的是字符的數目。對于使用多字節(jié)字符集的列,在指定列的前綴長度時,要考慮這一點。

在MySQL中:

·只有當您正在使用MyISAM, InnoDB或BDB表類型時,您可以向有NULL值的列中添加索引。

·只有當您正在使用MyISAM, BDB或InnoDB表類型時,您可以向BLOB或TEXT列中添加索引。

一個index_col_name規(guī)約可以以ASC或DESC為結尾。這些關鍵詞將來可以擴展,用于指定遞增或遞減索引值存儲。目前,這些關鍵詞被分析,但是被忽略;索引值均以遞增順序存儲。

部分儲存引擎允許在創(chuàng)建索引時指定索引類型。index_type指定語句的語法是USING type_name。不同的儲存引擎所支持的type_name值已顯示在下表中。如果列有多個索引類型,當沒有指定index_type時,第一個類型是默認值。

存儲引擎

允許的索引類型

MyISAM

BTREE

InnoDB

BTREE

MEMORY/HEAP

HASH, BTREE

示例:

CREATE TABLE lookup (id INT) ENGINE = MEMORY;
CREATE INDEX id_index USING BTREE ON lookup (id);

TYPE type_name可以作為USING type_name的同義詞,用于指定索引類型。但是,USING是首選的格式。另外,在索引規(guī)約語法中,位于索引類型前面的索引名稱不能使用TYPE。這是因為,與USING不同,TYPE不是保留詞,因此會被認為是一個索引名稱。

如果您指定的索引類型在給定的儲存引擎中不合法,但是有其它的索引類型適合引擎使用,并且不會影響查詢功能,則引擎應使用此類型。

FULLTEXT索引只能對CHAR, VARCHAR和TEXT列編制索引,并且只能在MyISAM表中編制。

SPATIAL索引只能對空間列編制索引,并且只能在MyISAM表中編制。

使用alter的方法創(chuàng)建索引

alter table table_name add index index_name (column_list) ;
alter table table_name add unique (column_list) ;
alter table table_name add primary key (column_list) ;

查詢索引

SHOW INDEX FROM table_name;

刪除索引

drop index index_name on table_name ;
alter table table_name drop index index_name ;
alter table table_name drop primary key ;

其中,在前面的兩條語句中,都刪除了table_name中的索引index_name。而在最后一條語句中,只在刪除PRIMARY KEY索引中使用,因為一個表只可能有一個PRIMARY KEY索引,因此不需要指定索引名。

相關文章

  • mysql修改記錄時update操作 字段=字段+字符串

    mysql修改記錄時update操作 字段=字段+字符串

    這篇文章主要介紹了mysql修改記錄時update操作 字段=字段+字符串,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 解決Windows10下mysql5.5數據庫命令行中文亂碼問題

    解決Windows10下mysql5.5數據庫命令行中文亂碼問題

    重置系統(tǒng)后,很久之前安裝的MySQL數據庫出現了控制臺查詢中文亂碼問題,時間太久早已經不記得怎么設置了。下面通過本文給大家分享Windows10下解決MySQL5.5數據庫命令行中文亂碼問題,一起看看吧
    2017-07-07
  • mysql全量備份和快速恢復的方法整理

    mysql全量備份和快速恢復的方法整理

    在本篇文章里小編給各位整理的是關于mysql全量備份和快速恢復的方法整理內容,需要的朋友們可以參考下。
    2020-03-03
  • Mysql錯誤Cannot find or open table x/x from the internal問題解決方法

    Mysql錯誤Cannot find or open table x/x from the internal問題解決方法

    這篇文章主要介紹了Mysql錯誤Cannot find or open table x/x from the internal問題解決方法,需要的朋友可以參考下
    2014-06-06
  • MySQL中主鍵與rowid的使用陷阱總結

    MySQL中主鍵與rowid的使用陷阱總結

    這篇文章主要給大家總結介紹了關于MySQL中主鍵與rowid的使用陷阱,文中通過示例代碼介紹的非常詳細,對大家的學習或者使用MySQL具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-10-10
  • mysql優(yōu)化limit查詢語句的5個方法

    mysql優(yōu)化limit查詢語句的5個方法

    這篇文章主要介紹了mysql優(yōu)化limit查詢語句的5個方法,它們分別是子查詢優(yōu)化法、倒排表優(yōu)化法、反向查找優(yōu)化法、limit限制優(yōu)化法和只查索引法,需要的朋友可以參考下
    2014-07-07
  • mysql中數據統(tǒng)計的技巧備忘錄

    mysql中數據統(tǒng)計的技巧備忘錄

    mysql是常用數據庫,對于數字操作相關的東西相當方便,這篇文章主要給大家介紹了關于mysql中數據統(tǒng)計技巧的相關資料,非常具有實用價值,需要的朋友可以參考下
    2018-05-05
  • MySQL用戶與權限的管理詳解

    MySQL用戶與權限的管理詳解

    這篇文章主要介紹了MySQL用戶與權限的管理,詳細分析了mysql用戶密碼、權限設置與使用相關操作原理及注意事項,需要的朋友可以參考下
    2019-07-07
  • Mysql存儲二進制對象數據問題

    Mysql存儲二進制對象數據問題

    這篇文章主要介紹了Mysql存儲二進制對象數據問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 查詢數據庫空間(mysql和oracle)

    查詢數據庫空間(mysql和oracle)

    本文通過代碼示例詳細介紹了如何查詢MySQL數據空間和Oracle數據空間,具有一定的參考價值,感興趣的小伙伴可以參考閱讀
    2023-04-04

最新評論