In der Welt der Datenbanken ist es oft entscheidend, dass bestimmte Spalten in einer Tabelle eindeutige Werte enthalten. Eindeutigkeit stellt sicher, dass keine Duplikate in der Spalte vorhanden sind und somit die Datenintegrität gewahrt bleibt. In Microsoft SQL Server bietet die Verwendung von UNIQUE Constraints eine einfache und effektive Möglichkeit, um solche Anforderungen zu erfüllen. In diesem Artikel werden wir untersuchen, wie man eine Tabellenspalte in SQL Server als UNIQUE setzt, und wir werden Codebeispiele zur Veranschaulichung verwenden.

Was ist ein UNIQUE Constraint?

Ein UNIQUE Constraint ist eine Einschränkung (Constraint) in einer SQL Server-Tabelle, die sicherstellt, dass alle Werte in der angegebenen Spalte eindeutig sind. Das bedeutet, dass keine doppelten Werte in dieser Spalte zugelassen werden, wodurch Datenkonsistenz und -integrität gewährleistet werden. UNIQUE Constraints können entweder bei der Erstellung der Tabelle oder nachträglich hinzugefügt werden.

UNIQUE Constraint beim Tabellenerstellen

Wenn du eine Tabelle erstellst und eine Spalte als eindeutig festlegen möchtest, kannst du den UNIQUE Constraint direkt in der CREATE TABLE-Anweisung verwenden. Hier ist ein Beispiel:

-- Beispiel: Erstellen einer Tabelle mit einer eindeutigen Spalte
CREATE TABLE Employees
(
    EmployeeID INT PRIMARY KEY,
    FirstName VARCHAR(50),
    LastName VARCHAR(50),
    Email VARCHAR(100) UNIQUE, -- Die Email-Spalte wird als UNIQUE gesetzt
    -- Weitere Spalten...
);

Im obigen Beispiel wird die Spalte “Email” als UNIQUE definiert, um sicherzustellen, dass jede E-Mail-Adresse in dieser Spalte eindeutig ist.

UNIQUE Constraint nach Tabellenerstellung hinzufügen

Angenommen, die Tabelle “Employees” existiert bereits, und du möchtest nachträglich eine Spalte als eindeutig kennzeichnen. Dies kannst du mit einer ALTER TABLE-Anweisung erreichen. Hier ist ein Beispiel:

-- Beispiel: Hinzufügen eines UNIQUE Constraints nachträglich
ALTER TABLE Employees
ADD CONSTRAINT UC_Employees_Email UNIQUE (Email);

In diesem Beispiel wird ein UNIQUE Constraint mit dem Namen “UC_Employees_Email” zur Tabelle “Employees” hinzugefügt und auf die Spalte “Email” angewendet. Dadurch wird sichergestellt, dass alle E-Mail-Adressen in der Spalte eindeutig sind.

Eindeutigkeit und NULL-Werte

Eine Spalte mit einem UNIQUE Constraint kann auch NULL-Werte enthalten. Das bedeutet, dass NULL als gültiger Wert in der Spalte akzeptiert wird und sich nicht mit anderen Nicht-NULL-Werten in der Spalte in Konflikt steht. Beispiel:

CREATE TABLE Products
(
    ProductID INT PRIMARY KEY,
    ProductName VARCHAR(100) UNIQUE NOT NULL,
    -- Weitere Spalten...
);

In diesem Beispiel wird die Spalte “ProductName” als UNIQUE und NOT NULL definiert, um sicherzustellen, dass jedes Produkt einen eindeutigen Namen hat und dieser Name nicht NULL sein kann.

Fazit

Die Verwendung von UNIQUE Constraints in Microsoft SQL Server ermöglicht es uns, eindeutige Spalten in Tabellen zu definieren und damit Datenintegrität und -konsistenz sicherzustellen. Entweder bei der Erstellung der Tabelle oder nachträglich können wir die UNIQUE Constraints hinzufügen und so die Anforderungen an Datenintegrität und Eindeutigkeit erfüllen. Das Verständnis von UNIQUE Constraints ist ein wichtiger Bestandteil des Datenbankdesigns und der Datenbankverwaltung in SQL Server.

Von Michael