Heim  >  Artikel  >  Datenbank  >  Detaillierte Erläuterung der Primärschlüssel in der MySQL-Datenbank

Detaillierte Erläuterung der Primärschlüssel in der MySQL-Datenbank

巴扎黑
巴扎黑Original
2017-05-15 15:15:122231Durchsuche

Einführung in Primärschlüssel

Wie bereits erwähnt, müssen Primärschlüsselwerte eindeutig sein. Das heißt, jede Zeile in der Tabelle muss einen eindeutigen Primärschlüsselwert haben. Wenn für den Primärschlüssel eine einzelne Spalte verwendet wird, müssen deren Werte eindeutig sein. Wenn mehrere Spalten verwendet werden, müssen die kombinierten Werte dieser Spalten eindeutig sein.

Die Rolle des MySQL-Primärschlüssels

Die Spalte (oder diese Gruppe von Spalten), die jede Zeile in der Tabelle eindeutig identifiziert, wird als Primärschlüssel bezeichnet. Ohne einen Primärschlüssel ist das Aktualisieren oder Löschen bestimmter Zeilen in einer Tabelle schwierig, da es keine sichere Möglichkeit gibt, sicherzustellen, dass nur relevante Zeilen entworfen werden.

Die CREATE TABLE-Beispiele, die wir bisher gesehen haben, verwenden alle eine einzelne Spalte als Primärschlüssel. Der Primärschlüssel wird mit einer Anweisung ähnlich der folgenden definiert:

PRIMARY KEY (vend_id )

Um einen Primärschlüssel zu erstellen, der aus mehreren Spalten besteht, sollte jeder Spaltenname wie folgt in einer durch Kommas getrennten Liste angegeben werden:

create table orderitems
(
order_num              int              NOT NULL,
order_item             int               NOT NULL,
prod_id              char(10)            NOT NULL,
quantity              int               NOT NULL,
item_price              decimal(8,2)                  NOT NULL,
PRIMARY KEY (order_num,order_item)
)ENGINE = InnoDB;

Die orderitems-Tabelle enthält die Details jeder Bestellung in der Bestellungen-Tabelle. Jede Bestellung umfasst mehrere Artikel, aber jede Bestellung enthält jeweils nur einen ersten Artikel, einen zweiten Artikel usw. Daher ist die Kombination aus Bestellnummer (Spalte order_num) und Bestellposition (Spalte order_item) eindeutig und somit als Primärschlüssel geeignet, der wie folgt definiert ist:

PRIMARY KEY ( order_num,order_item)

Der Primärschlüssel kann beim Erstellen definiert werden der Tabelle (wie hier gezeigt) oder nach der Erstellung der Tabelle definiert.

Primärschlüssel und NULL-Werte Ein Primärschlüssel ist eine Spalte, deren Wert jede Zeile in einer Tabelle eindeutig identifiziert. Im Primärschlüssel können nur Spalten verwendet werden, die keine NULL-Werte zulassen. Spalten, die NULL-Werte zulassen, können nicht als eindeutige Bezeichner verwendet werden.

Über das automatische Inkrementieren des Primärschlüssels werden wir es in der detaillierten Erklärung zur Verwendung von AUTO_INCREMENT in MySQL zum Erstellen einer Datentabelle ausführlich erläutern.

【Verwandte Empfehlungen】

  1. php Chinesische Website empfiehlt besonders : php Programmer Toolbox Download ( Build a PHP-Umgebung mit einem Klick)

  2. mysql selbsterhöhende AUTO_INCREMENT-Instanznutzung

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Primärschlüssel in der MySQL-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn