《Mysql應用mysql索引類型有哪些》要點:
本文介紹了Mysql應用mysql索引類型有哪些,希望對您有用。如果有疑問,可以聯系我們。
MYSQL應用介紹各種類型的mysql索引.
MYSQL應用1、普通索引
MYSQL應用普通索引(由關鍵字key或index定義的索引)的唯一任務是加快對數據的拜訪速度.因此,應該只為那些最經常出現在查詢條件(wherecolumn=)或排序條件(orderbycolumn)中的數據列創建索引.只要有可能,就應該選擇一個數據最整齊、最緊湊的數據列(如一個整數類型的數據列)來創建索引.
MYSQL應用2、唯一索引
MYSQL應用普通索引允許被mysql索引的數據列包含重復的值.比如說,因為人有可能同名,所以同一個姓名在同一個“員工個人資料”數據表里可能出現兩次或更多次.
MYSQL應用如果能確定某個數據列將只包含彼此各不相同的值,在為這個數據列創建索引的時候就應該用關鍵字unique把它定義為一個唯一索引.這么做的好處:一是簡化了mysql對這個索引的管理工作,這個索引也因此而變得更有效率;二是mysql會在有新記錄插入數據表時,自動檢查新記錄的這個字段的值是否已經在某個記錄的這個字段里出現過了;如果是,mysql將拒絕插入那條新記錄.也就是說,唯一索引可以保證數據記錄的唯一性.事實上,在許多場合,人們創建唯一索引的目的往往不是為了提高拜訪速度,而只是為了避免數據出現重復.
MYSQL應用3、主索引
在前面已經反復多次強調過:必須為主鍵字段創建一個索引,這個mysql索引就是所謂的“主索引”.主索引與唯一索引的唯一區別是:前者在定義時使用的關鍵字是primary而不是unique.
MYSQL應用4、外鍵索引
如果為某個外鍵字段定義了一個外鍵約束條件,mysql就會定義一個內部索引來幫助自己以最有效率的方式去管理和使用外鍵約束條件.
MYSQL應用5、復合索引
mysql索引可以覆蓋多個數據列,如像index(columna,columnb)索引.這種索引的特點是mysql可以有選擇地使用一個這樣的索引.如果查詢操作只需要用到columna數據列上的一個索引,就可以使用復合索引index(columna,columnb).不過,這種用法僅適用于在復合索引中排列在前的數據列組合.比如說,index(a,b,c)可以當做a或(a,b)的索引來使用,但不能當做b、c或(b,c)的索引來使用.
MYSQL應用6、索引的長度
在為char和varchar類型的數據列定義mysql索引時,可以把mysql索引的長度限制為一個給定的字符個數(這個數字必須小于這個字段所允許的最大字符個數).這么做的好處是可以生成一個尺寸比較小、檢索速度卻比較快的索引文件.在絕大多數應用里,數據庫中的字符串數據大都以各種各樣的名字為主,把索引的長度設置為10~15個字符已經足以把搜索范圍縮小到很少的幾條數據記錄了.在為blob和text類型的數據列創建索引時,必須對索引的長度做出限制;mysql所允許的最大索引全文索引文本字段上的普通索引只能加快對出現在字段內容最前面的字符串(也就是字段內容開頭的字符)進行檢索操作.如果字段里存放的是由幾個、甚至是多個單詞構成的較大段文字,普通索引就沒什么作用了.這種檢索往往以的形式出現,這對mysql來說很復雜,如果需要處理的數據量很大,響應時間就會很長.
MYSQL應用這類場合正是全文索引(full-textindex)可以大顯身手的地方.在生成這種類型的索引時,mysql將把在文本中出現的所有單詞創建為一份清單,查詢操作將根據這份清單去檢索有關的數據記錄.全文索引即可以隨數據表一同創建,也可以等日后有必要時再使用下面這條命令添加:
?
MYSQL應用上面這條命令將把column1和column2字段里有word1、word2和word3的數據記錄全部查詢出來.
MYSQL應用注解:innodb數據表不支持全文索引.
mysql索引類型區別分析
mysql索引的類型與優缺點
mysql索引優化注意問題
mysql索引優化實例解析
mysql索引優化應用實例
Mysql索引分類與優化
MySql索引優化注意要點
Mysql索引優化辦法解析
深入理解MySQL索引與優化
維易PHP培訓學院每天發布《Mysql應用mysql索引類型有哪些》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/8899.html