Sowohl Schlüssel als auch eindeutige Schlüssel werden verwendet, um Tupel eindeutig zu identifizieren und die Eindeutigkeit innerhalb einer Spalte oder Spaltenkombination zu erzwingen. Wie kann man sie also unterscheiden? Der folgende Artikel gibt Ihnen einen kurzen Vergleich zwischen Primärschlüsseln und eindeutigen Schlüsseln und stellt die Unterschiede zwischen Primärschlüsseln und eindeutigen Schlüsseln vor. Ich hoffe, er wird Ihnen hilfreich sein.
Was ist ein Primärschlüssel?
Ein Primärschlüssel ist eine Spalte in einer Tabelle, die jedes Tupel (Zeile) in dieser Tabelle eindeutig identifiziert. Der Primärschlüssel erzwingt Integritätseinschränkungen für die Tabelle. In der Tabelle ist nur ein Primärschlüssel zulässig. Der Primärschlüssel akzeptiert keine doppelten Werte und Nullwerte. Primärschlüsselwerte in einer Tabelle ändern sich selten. Daher müssen Sie bei der Auswahl eines Primärschlüssels vorsichtig sein und einen Ort auswählen, an dem sich selten ändert. Der Primärschlüssel einer Tabelle kann vom Fremdschlüssel einer anderen Tabelle referenziert werden. [Video-Tutorial-Empfehlung: MySQL-Tutorial]
Um den Primärschlüssel besser zu verstehen, erstellen wir eine Tabelle mit dem Namen „Student“, die Attribute wie „roll_number“, „name“, „batch“, „phone_number“ und „citizen_id“ enthält , usw.
Im obigen Beispiel kann das Attribut roll_number niemals denselben NULL-Wert haben, da ein an jeder Universität eingeschriebener Student eine eindeutige Roll_number hat, sodass nicht beide Studenten dieselbe Roll_number haben können , und jede Zeile in der Tabelle kann durch das roll_number-Attribut des Schülers eindeutig identifiziert werden. In diesem Fall können wir das Roll_number-Attribut als Primärschlüssel festlegen.
Was ist ein eindeutiger Schlüssel?
Eindeutige Schlüsseleinschränkungen können ein einzelnes Tupel in einer Beziehung oder Tabelle eindeutig identifizieren. Im Gegensatz zu Primärschlüsseln kann eine Tabelle mehrere eindeutige Schlüssel haben. Eine eindeutige Schlüsseleinschränkung kann nur einen Nullwert für eine Spalte akzeptieren; eine eindeutige Schlüsseleinschränkung wird auch von einem Fremdschlüssel aus einer anderen Tabelle referenziert. Es wird verwendet, wenn eindeutige Einschränkungen für Spalten und Spaltengruppen erzwungen werden sollen, die keine Primärschlüssel sind.
Um den eindeutigen Schlüssel besser zu verstehen, verwenden wir die Student-Tabelle mit den Attributen Roll_number, Name, Batch, Phone_number und Citizen_ID, wobei dem Primärschlüssel das Attribut Roll_number zugewiesen wurde.
In diesem Beispiel kann Citizen_ID eine eindeutige Einschränkung zugewiesen werden, wobei jeder Eintrag in der Spalte Citizen_ID eindeutig und nicht doppelt sein sollte, da jeder Bürger eines Landes über eine eindeutige Einschränkung verfügen muss seine oder ihre eindeutige Identifikationsnummer. Wenn der Student jedoch aus einem anderen Land migriert, hat er oder sie in diesem Fall keine Citizen_ID und der Eintrag kann einen NULL-Wert haben, da in der Eindeutigkeitsbeschränkung ein NULL-Wert zulässig ist.
Der Hauptunterschied zwischen Primärschlüssel und eindeutigem Schlüssel:
1 Wenn ein Attribut als Primärschlüssel deklariert ist, akzeptiert es keine NULL-Werte. Wenn eine Eigenschaft hingegen als Unique deklariert ist, kann sie einen NULL-Wert annehmen.
2. Die Tabelle kann nur einen Primärschlüssel enthalten, es können jedoch mehrere eindeutige Schlüssel vorhanden sein.
3. Erstellen Sie beim Definieren des Primärschlüssels automatisch einen Clustered-Index. Im Gegensatz dazu generieren eindeutige Schlüssel nicht gruppierte Indizes.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonEinfacher Vergleich von Primärschlüssel und eindeutigem Schlüssel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!