mysql主鍵唯一說的是啥意思啊?Bean毛豆2018-02-28 20:53:24

MySQL中的主鍵,應該說是關係型資料庫中的主鍵。MySQL只是關係型資料庫中的一種。回答這個問題前我們先要清楚主鍵的定義。

什麼是主鍵

資料庫主鍵,指的是一個列或多列的組合,其值能唯一地標識表中的每一行,透過它可強制表的實體完整性。

表中的一個或多個欄位,它的值用於唯一地標識表中的某一條記錄。在兩個表的關係中,主關鍵字用來在一個表中引用來自於另一個表中的特定記錄。主關鍵字是一種唯一關鍵字,表定義的一部分。一個表的主鍵可以由多個關鍵字共同組成,並且主關鍵字的列不能包含空值。主關鍵字是可選的,並且可在 CREATE TABLE 或 ALTER TABLE 語句中定義。

mysql主鍵唯一說的是啥意思啊?

主鍵的唯一性

根據上面的定義主鍵的值唯一標識表中一行記錄。不能有重複的,不允許為空。用來保證資料完整性。主鍵在物理層面上只有兩個用途:第一、惟一地標識一行;第二、作為一個可以被外來鍵有效引用的物件。

假定學生關係表為Student(學號,姓名,年齡,所在學院),關鍵字為單一關鍵字“學號”,因為存在如下決定關係:(學號) → (姓名,年齡,所在學院)。這裡的學號可作為主鍵,透過主鍵(學號)就可以唯一化你在這個學校的檔案資訊。

主鍵的唯一性要注意一點是,不能為空,必須是實值。

mysql主鍵唯一說的是啥意思啊?Clhlh2017-11-09 11:23:02

主鍵唯一通俗的意思就是主鍵欄位中的值不能相同,既然主鍵欄位中的每個值不相同,那就是代表主鍵欄位具有唯一性啦。

還有一張表中可以設定多個主鍵或者沒有主鍵,但通常情況下是一張表一個主鍵。