Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Bedeutung des Primärschlüssels für Microsoft SQL Server 2008

Im Allgemeinen ist ein SCHLÜSSEL eine Spalte (oder Kombination von Spalten), die jede Zeile in der Tabelle eindeutig identifiziert. Es ist möglich, mehrere SCHLÜSSEL in einer Tabelle zu haben (zum Beispiel könnten Sie eine Person haben Tabelle, in der sowohl die Sozialversicherungsnummer als auch eine sich automatisch erhöhende Nummer SCHLÜSSEL sind).

Der Datenbankdesigner wählt eine aus dieser SCHLÜSSEL als PRIMÄRSCHLÜSSEL. Konzeptionell spielt es keine Rolle, welche KEY wird als PRIMARY KEY gewählt. Da der PRIMARY KEY jedoch normalerweise verwendet wird, um auf Einträge in dieser Tabelle aus anderen Tabellen (über FOREIGN KEYs) zu verweisen, kann die Wahl eines guten PRIMARY KEY relevant sein bzgl. (a) Leistung und (b) Wartbarkeit :

(a) Da der Primärschlüssel normalerweise in JOINs verwendet wird, ist der Index auf dem Primärschlüssel (seine Größe, seine Verteilung, ...) viel relevanter für die Leistung als andere Indizes.

(b) Da der Primärschlüssel in anderen Tabellen als Fremdschlüssel verwendet wird, verändert der Primärschlüsselwert ist immer umständlich, da alle Fremdschlüsselwerte in den anderen Tabellen ebenfalls geändert werden müssen.