sql >> Databáze >  >> RDS >> Sqlserver

Jaký je rozdíl mezi primárním klíčem a náhradním klíčem?

Primární klíč je jedinečný klíč ve vaší tabulce, který si vyberete a který nejlépe jednoznačně identifikuje záznam v tabulce. Všechny tabulky by měly mít primární klíč, protože pokud budete někdy potřebovat aktualizovat nebo odstranit záznam, musíte vědět, jak jej jednoznačně identifikovat.

Náhradní klíč je uměle generovaný klíč. Jsou užitečné, když vaše záznamy v podstatě nemají žádný přirozený klíč (například Person tabulka, protože je možné, aby dva lidé narození ve stejný den měli stejné jméno nebo záznamy v protokolu, protože je možné, že nastanou dvě události tak, že mají stejné časové razítko). Nejčastěji je uvidíte implementované jako celá čísla v automaticky se zvyšujícím poli nebo jako GUID, které se generují automaticky pro každý záznam. Identifikační čísla jsou téměř vždy náhradní klíče.

Na rozdíl od primárních klíčů však ne všechny tabulky potřebují náhradní klíče. Pokud máte tabulku, ve které jsou uvedeny státy v Americe, tak k nim ID číslo opravdu nepotřebujete. Jako kód primárního klíče můžete použít zkratku státu.

Hlavní výhodou náhradního klíče je, že je snadné zaručit, že jsou jedinečné. Hlavní nevýhodou je, že nemají žádný význam. Neznamená to, že „28“ je například Wisconsin, ale když ve sloupci State v tabulce adres uvidíte „WI“, víte, o kterém státě mluvíte, aniž byste museli hledat, který stát je který ve vašem státě. tabulka.



  1. Zkopírujte tabulku MySQL včetně indexů

  2. Jak odstranit duplicitní hodnotu oddělenou čárkou v jednom sloupci v MySQL

  3. Vložte více řádků výchozích hodnot do tabulky

  4. Mysql - 1045 - Přístup odepřen pro uživatele 'user'@'localhost' (pomocí hesla:Ano)