程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 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