MySQL中的 UNIQUE約束和UNIQUE索引
最近專案中又用到了索引, 以前用過, 也沒記, 所以糾結的我啊, 記錄一下, 希望能幫助到你
一、索引
- 索引一般分為三類:
- FULLTEXT: 全文索引
- PRIMARY: 主鍵索引
- UNIQUE: 唯一索引
二、約束
- 約束一般分為三類:
- PRIMARY KEY: 主鍵約束
- UNIQUE: 唯一約束
- FOREIGN: 外來鍵約束
- NOT NULL: 非空約束
三、UNIQUE約束和UNIQUE索引比較
- 共同點
- 都能保證記錄資料的唯一性, 因為UNIQUE約束是基於UNIQUE索引;
- 不同點
- 如果某列有多個NULL值, 可以新增UNIQUE約束, 但是不能新增UNIQUE索引;
- 建立和刪除的關鍵字不同;
筆記
索引的建立
- 建立表的時候建立索引
CREATE TABLE <table-name> (<column-name> <column-type>[, <column-name> <column-type>[, ...]] [<index-type>] INDEX <index-name>(<column-name>[,<column-name>...]) )
- 給已經存在的表新增索引
- 方式一:
CREATE [<index-type>] INDEX <index-name> ON <table-name> (<column-name-list>)
- 方式二:
ALERT TABLE <table-name> ADD [<index-type>] INDEX <index-name> (<column-name-list>)
- 方式一:
索引的刪除
- 刪除就一種方式
DROP INDEX <index-name> ON <table-name>
相關文章
- NULL和唯一約束UNIQUE的對應關係Null
- mysql索引型別:FULLTEXT、NORMAL、SPATIAL、UNIQUEMySql索引型別ORM
- Unique約束,Primary Key約束與索引的關係學習與測試_20091213.doc索引
- 【SQL】15 SQL 約束(Constraints)、NOT NULL 約束、UNIQUE 約束、PRIMARY KEY 約束、FOREIGN KEY 約束、CHECK 約束、DEFAULT約束SQLAINull
- 在 SQL Server 中,建立表時可以直接為欄位新增唯一約束(UNIQUE)SQLServer
- 主鍵local索引、unique local索引、分割槽索引順序的理解索引
- 唯一性索引(Unique Index)與普通索引(Normal Index)差異(中)索引IndexORM
- mysql索引型別Normal,Unique,Full Text區別以及索引方法Btree,Hash的區別MySql索引型別ORM
- Unique Array
- mysql中key 、primary key 、unique key 與index區別MySqlIndex
- 索引唯一性掃描(INDEX UNIQUE SCAN)索引Index
- oracle10g_exceptions異常表_記錄違犯pk_unique key約束資訊OracleException
- pk 、unique index 和 index 區別Index
- C++11中unique_ptr的使用C++
- Index Unique Scan (213)Index
- 唯一性索引(Unique Index)與普通索引(Normal Index)差異(上)索引IndexORM
- 唯一性索引(Unique Index)與普通索引(Normal Index)差異(下)索引IndexORM
- MySQL 約束MySql
- 主鍵(PK)與非空唯一索引(Unique Index)的區別索引Index
- 查詢指定使用者的unique,primary索引名/鍵值索引
- MySQL 中的約束及相關操作MySql
- MySQL在RR隔離級別下的unique失效和死鎖模擬MySql
- SQL Server Unique ConstratintsSQLServer
- Sparse Indexes vs unique indexIndex
- Leetcode Unique PathsLeetCode
- For the modern unique years event soiree
- oracle Distinct|Unique 異同Oracle
- Unique and Nonunique Indexes (195)Index
- 分散式系統中 Unique ID 的生成方法分散式
- [CareerCup] 1.1 Unique Characters of a String 字串中不同的字元字串字元
- SQL SERVER中找出拙劣的約束,索引,外來鍵SQLServer索引
- 深入 C++ 的 unique_ptrC++
- db_name和db_unique_name的區別
- Data Warehouse Guide閱讀筆記(六):unique constraint & unique indexGUIIDE筆記AIIndex
- 【MySQL】可重複讀模式下 unique key失效案例MySql模式
- Laravel的unique和exists驗證規則的優化Laravel優化
- Oracle以及PG中將指定使用者的primary,unique索引按照指定格式輸出Oracle索引
- Leetcode-Unique PathsLeetCode