Eine Schlüsseldefinition (key_definition) in einer CREATE TABLE-Anweisung oder einer ALTER TABLE-Anweisung definiert den Schlüssel einer Basistabelle. Eingeleitet wird die Schlüsseldefinition durch die Schlüsselworte PRIMARY KEY (Primärschlüssel).
<key_definition> :: PRIMARY KEY (<column_name>,...)
SQL-Anweisung, um eine Tabelle person mit einem einspaltigen Primärschlüssel für die Spalte knr zu erzeugen:
CREATE TABLE person (knr FIXED(4), vorname CHAR(7), nachname CHAR(7), konto FIXED(7,2), PRIMARY KEY (knr))
Das Einfügen von Zeilen geschieht wie in eine Basistabelle ohne Schlüsseldefinition. Allerdings werden doppelte Einträge für die Kundennummer abgewiesen.
Der Spaltenname (column_name) muss eine Spalte der Basistabelle identifizieren. Die angegebenen Spaltennamen sind die Schlüsselspalten der Tabelle.
Eine Schlüsselspalte darf keine Spalte des Datentyps LONG identifizieren und ist immer eine NOT NULL-Spalte. Vom Datenbanksystem wird sichergestellt, dass keine Schlüsselspalte einen NULL-Wert besitzt und dass zwei Zeilen der Tabelle nicht in allen Schlüsselspalten die gleichen Werte besitzen.
Siehe auch: