什么是mysql 主鍵和外鍵有什么區(qū)別呢?
主鍵和外鍵有什么區(qū)別呢?主鍵是定義表中的主要數(shù)據項。這些數(shù)據項的數(shù)據在表中是唯一的。同時,系統(tǒng)根據主鍵為表建立索引。外鍵是定義表中某個數(shù)據項的數(shù)據,并引用另一個表的主鍵數(shù)據。不允許在另一個表的主鍵數(shù)據
主鍵和外鍵有什么區(qū)別呢?
主鍵是定義表中的主要數(shù)據項。這些數(shù)據項的數(shù)據在表中是唯一的。同時,系統(tǒng)根據主鍵為表建立索引。
外鍵是定義表中某個數(shù)據項的數(shù)據,并引用另一個表的主鍵數(shù)據。不允許在另一個表的主鍵數(shù)據中出現(xiàn)的數(shù)據出現(xiàn)在此表的外鍵數(shù)據項中。
主鍵:表中記錄的唯一標識
外鍵:依賴于其他表的數(shù)據
唯一鍵:表中唯一的
鍵是一個或多個字段的組合
唯一鍵:可以確定記錄的字段(或字段組合)。一個表可以有多個唯一密鑰,就像身份證、學生證和軍人證可以識別您的身份一樣
主鍵:您可以使用唯一密鑰一個表只能有一個主鍵。
外鍵:定義的外鍵是另一個表的主鍵。
主鍵:表中記錄的唯一標識符。外鍵:依賴于其他表的數(shù)據。唯一鍵:表中唯一。
主鍵和唯一鍵之間的區(qū)別:主鍵不允許為空,而唯一鍵是允許的。當然,您可以添加not Null來限制它
答案是:不,只要外鍵是唯一的,外鍵就可以用作主鍵或不作為主鍵。沒有必要討論第二個問題。第三個問題:既然已經添加了外鍵約束,那么應該首先插入類表信息。如果先插入學生信息找不到對應的類外鍵約束,則插入失敗,