程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 簡略引見MySQL中索引的應用辦法

簡略引見MySQL中索引的應用辦法

編輯:MySQL綜合教程

簡略引見MySQL中索引的應用辦法。本站提示廣大學習愛好者:(簡略引見MySQL中索引的應用辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是簡略引見MySQL中索引的應用辦法正文


數據庫索引是一個數據構造,進步操作的速度,在一個表中可使用一個或多個列,供給兩個疾速隨機查找和高效的次序拜訪記載的基本創立索引。

在創立索引時,它應當被以為是將SQL查詢的那些列上創立一個或多個索引的列。

現實上,指數也堅持主鍵或索引字段和指針的現實表中每筆記錄的表型。

用戶沒法看到索引,它們只是用來加速查詢速度,將用於數據庫搜刮引擎找到的記載速度異常快。

INSERT和UPDATE語句表上的索引須要更多的時光,成為疾速對這些表的SELECT語句。究其緣由是,當停止拔出或更新,數據庫和須要惰性或更新索引值。
簡略的獨一索引:

可以創立一個獨一索引的表。獨一的索引意味著兩個行不克不及具有雷同的索引值。這裡是語法來創立索引的表

CREATE UNIQUE INDEX index_name
ON table_name ( column1, column2,...);

可使用一個或多個列上創立索引。例如,我們可以創立一個索引的應用在表tutorials_tbl的tutorial_author列上

CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author)

可以創立一個簡略的索引的表。只需省略UNIQUE症結字的查詢創立一個簡略的索引。簡略的索引許可反復表中的值。

假如你想在一列以降序索引值,可以在列名後添加保存字DESC:

mysql> CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author DESC)

ALTER敕令添加和刪除索引:

有四品種型的語句表添加索引:

  •     ALTER TABLE tbl_name ADD PRIMARY KEY (column_list) : 這條語句添加一個主鍵,這意味著索引值必需是獨一的,不克不及是NULL。
  •     ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 這條語句創立一個索引,其值必需是獨一的(除NULL值,這能夠會屢次湧現)。
  •     ALTER TABLE tbl_name ADD INDEX index_name (column_list): 這增長了一個通俗的索引,個中的任何值,能夠會湧現多於一次。
  •     ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list): 這將創立一個特別的FULLTEXT索引,用於文本搜刮的目標。

上面是這個例子,在現有的表添加索引。

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

可以刪除任何INDEX經由過程應用DROP子句和應用ALTER敕令。嘗嘗上面的例子下面創立的索引降低。

mysql> ALTER TABLE testalter_tbl DROP INDEX (c);

可以刪除任何INDEX經由過程應用DROP子句t和應用ALTER敕令。嘗嘗上面的例子下面創立的索引x。
ALTER敕令來添加和刪除PRIMARY KEY:

您可以添加主鍵,和在雷同的方法中。但要確保主鍵這是NOT NULL的列上。

這是在現有的表添加主鍵的例子。這將NOT NULL列,然後將其添加為一個主鍵。

mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);

可使用ALTER敕令刪除主鍵以下:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

要刪除索引,這不是一個PRIMARY KEY,所以必需指定索引的稱號。
顯示索引信息:

您可使用SHOW INDEX敕令,列出一切相干聯的索引表。垂直格局輸入(指定由\ G)常常是有效的這句話,以免長時光行堆疊:

嘗嘗上面的例子:

mysql> SHOW INDEX FROM table_name\G
........


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved