索引與約束的區別

2022-03-12 09:01:02 字數 418 閱讀 9107

(1)主鍵索引和主鍵有什麼關係?

主鍵索引是建立主鍵的時候系統自動建立的索引,主鍵要求不重複,不為空,但是他如何判斷有效率呢?當然是建索引了,老是全表遍歷還不瘋掉。

所以建立主鍵會自動的建立主鍵索引。

(2)主鍵和唯一鍵的區別在於唯一鍵可以為空,主鍵不可以

(3)建立唯一約束和唯一索引又什麼區別?

同理,建立唯一約束的時候,也會自動的建立唯一索引。建立唯一索引可以說是唯一約束的一種手段。

基本上,實現起來是沒有什麼區別的。如果實在理解不了,就當一樣好了。

(4)約束和主鍵有什麼區別?

約束一般有主鍵約束,外來鍵約束,唯一約束等。

分別為primary key,foreign key,unique 其中主鍵約束只是約束的一種。

其實它們是不同概念的東西。

**自:

mysql 索引與約束 mysql約束與索引的區別

摘自 一 約束 作用 是為了保證資料的完整性而實現的摘自一套機制,它具體的根據各個不同的資料庫的實現而有不同的工具 約束 這裡主要講解mysql的約束 1 非空約束 not null 指示某列不能儲存null 值 2 唯一約束 unique uk unique約束的字段,要求必須是唯一的,但null...

索引和約束的區別

constraint 約束被 db2 universal database db2 udb 用來對資料業務規則和資料完整性進行實施 維護。約束的作用範圍僅限在當前資料庫,通過檢索 資料庫目錄 和 命令方式 select from user constraints 可以檢視到約束資訊。如果想方便 快捷...

約束與索引

非空約束 not null create table emp emp id nvarchar 9 not null,emp name nvarchar 50 not null,當一列被建立時,可以使用not null約束,空值null 等於沒有或未知道,該錶的兩個列不允許插入null或者不設定值。主...