鍵
例如:在學生表中,ID用作鍵,因為它對每個學生都是唯一的。 在PERSON表中,passport_number
,license_number
,SSN是鍵,因為它們對每個人都是唯一的。
它是第一個用於唯一標識實體的一個且僅一個範例的鍵。 正如在PERSON
表中看到的那樣,實體可以包含多個鍵。 從這些列表中最合適的鍵成為主鍵。
在EMPLOYEE
表中,ID
可以是主鍵,因為它對每個員工都是唯一的。 在EMPLOYEE
表中,甚至可以選擇License_Number
和Passport_Number
組合作為主鍵,因為它們也是唯一的。
對於每個實體,主鍵的選擇基於需求和開發人員。
候選鍵是可以唯一地標識元組的屬性或屬性集。
除主鍵之外的其餘屬性被視為候選鍵。候選鍵與主鍵一樣強。
例如:在EMPLOYEE
表中,id
最適合主鍵。 其餘屬性(如SSN
,Passport_Number
和License_Number
等)被視為候選鍵。
超級鍵是一組可以唯一標識元組的屬性。 超級鍵是候選鍵的超集。
例如:在上面的EMPLOYEE
表中,對於(EMPLOEE_ID
,EMPLOYEE_NAME
),兩個員工的名稱可以相同,但他們的EMPLYEE_ID
不能相同。 因此,這種組合也可以成為鍵。
超級鍵是EMPLOYEE-ID
,(EMPLOYEE_ID
,EMPLOYEE-NAME
)等。
外來鍵是表的列,用於指向另一個表的主鍵。
在公司中,每個員工都在特定的部門工作,員工和部門是兩個不同的實體。 因此無法將該部門的資訊儲存在employee
表中。這就要通過一個表的主鍵連結這兩個表的原因。
例如,將DEPARTMENT
表的主鍵Department_Id
新增為EMPLOYEE
表中的作為一個屬性。
現在在EMPLOYEE
表中,Department_Id
是外來鍵,兩個表都是相關的。