主鍵與唯一索引的區別:
主鍵是一種約束,唯一索引是一種索引,兩者在本質上是不同的。
主鍵創建后一定包含一個唯一性索引,唯一性索引并不一定就是主鍵。
唯一性索引列允許空值,而主鍵列不允許為空值。
主鍵列在創建時,已經默認為空值 + 唯一索引了。
主鍵可以被其他表引用為外鍵,而唯一索引不能。
一個表最多只能創建一個主鍵,但可以創建多個唯一索引。
主鍵更適合那些不容易更改的唯一標識,如自動遞增列、身份證號等。
很簡單,主鍵約束不能重復,不可為空(NULL)。
唯一性約束,不能重復,可為空(NULL),但是只能由一個NULL。
主鍵是一種約束,唯一索引是一種索引,兩者在本質上是不同的。
主鍵創建后一定包含一個唯一性索引,唯一性索引并不一定就是主鍵。
唯一性索引列允許空值,而主鍵列不允許為空值。
主鍵列在創建時,已經默認為空值 + 唯一索引了。
主鍵可以被其他表引用為外鍵,而唯一索引不能。
一個表最多只能創建一個主鍵,但可以創建多個唯一索引。
主鍵更適合那些不容易更改的唯一標識,如自動遞增列、身份證號等。
很簡單,主鍵約束不能重復,不可為空(NULL)。
唯一性約束,不能重復,可為空(NULL),但是只能由一個NULL。