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