您好,登錄后才能下訂單哦!
這篇文章主要介紹mysql主鍵索引和普通索引之間有什么區別,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
索引用來快速地尋找那些具有特定值的記錄,所有MySQL索引都以B-樹的形式保存。MySQL提供多種索引類型供選擇:普通索引 、唯一性索引、主鍵索引 、全文索引等等。
普通索引
普通索引是最基本的索引類型,而且它沒有唯一性之類的限制。普通索引可以通過以下幾種方式創建:
創建索引,例如
CREATE INDEX <索引的名字> ON tablename (列的列表);
修改表,例如
ALTER TABLE tablename ADD INDEX [索引的名字] (列的列表);
創建表的時候指定索引,例如
CREATE TABLE tablename ( [...], INDEX [索引的名字] (列的列表) );
主鍵索引
主鍵是一種唯一性索引,但它必須指定為“PRIMARY KEY”。
主鍵一般在創建表的時候指定,例如
CREATE TABLE tablename ( [...], PRIMARY KEY (列的列表) );
但是,我們也可以通過修改表的方式加入主鍵,例如“ALTER TABLE tablename ADD PRIMARY KEY (列的列表); ”。每個表只能有一個主鍵。
區別
普通索引是最基本的索引類型,沒有任何限制,值可以為空,僅加速查詢。普通索引是可以重復的,一個表中可以有多個普通索引。
主鍵索引是一種特殊的唯一索引,一個表只能有一個主鍵,不允許有空值;索引列的所有值都只能出現一次,即必須唯一。簡單來說:主鍵索引是加速查詢 + 列值唯一(不可以有null)+ 表中只有一個。
以上是mysql主鍵索引和普通索引之間有什么區別的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。