PostgreSQL Unique Constraints

In diesem PostgreSQL-Lernprogramm wird erläutert, wie Sie in PostgreSQL Unique Constraints erstellen, hinzufügen und löschen, und zwar mit Syntax und Beispielen.

Was ist eine einzigartige Einschränkung in PostgreSQL?

Eine Unique Constraints ist ein einzelnes Feld oder eine Kombination von Feldern, die einen Datensatz eindeutig definiert. Einige der Felder können Nullwerte enthalten, solange die Wertekombination eindeutig ist.

Was ist der Unterschied zwischen einer Unique Constraints und einem Primärschlüssel?

Primary KeyUnique Constraint
Keines der Felder, die Teil des Primärschlüssels sind, darf einen Nullwert enthalten.Einige der Felder, die Teil der Unique Constraints sind, können Nullwerte enthalten, solange die Wertekombination eindeutig ist.

Erstellen einer Unique Constraints – Verwenden einer CREATE TABLE-Anweisung

Die Syntax zum Erstellen einer Unique Constraints mithilfe einer CREATE TABLE-Anweisung in PostgreSQL lautet:

CREATE TABLE Tabellenname
(
Spalte1 Datentyp [ NULL | NOT NULL ],
Spalte2 Datentyp [ NULL | NOT NULL ],

CONSTRAINT constraint_name UNIQUE (uc_col1, uc_col2, … uc_col_n)

Tabellenname
Der Name der Tabelle, die Sie erstellen möchten.
Spalte1, Spalte2
Die Spalten, die Sie in der Tabelle erstellen möchten.
constraint_name
Der Name der Unique Constraints.
uc_col1, uc_col2, … uc_col_n
Die Spalten, aus denen die Unique Constraints besteht.

Beispiel

Schauen wir uns ein Beispiel an, wie Sie mit der Anweisung CREATE TABLE eine Unique Constraints in PostgreSQL erstellen.

In diesem Beispiel haben wir eine Unique Constraints für die Tabelle order_details mit dem Namen order_unique erstellt. Es besteht nur aus einem Feld – dem order_id-Feld.
Wir könnten auch eine Unique Constraints mit mehr als einem Feld erstellen, wie im folgenden Beispiel gezeigt:

Erstellen einer Unique Constraints – Verwenden einer ALTER TABLE-Anweisung

Die Syntax zum Erstellen einer Unique Constraints mithilfe einer ALTER TABLE-Anweisung in PostgreSQL lautet:

ALTER TABLE Tabellenname
ADD CONSTRAINT constraint_name UNIQUE (Spalte1, Spalte2, … Spalte_n);
Tabellenname
Der Name der zu ändernden Tabelle. Dies ist die Tabelle, der Sie eine Unique Constraints hinzufügen möchten.
constraint_name
Der Name der Unique Constraints.
Spalte1, Spalte2, … Spalte_n
Die Spalten, aus denen die Unique Constraints besteht.

Beispiel

Sehen wir uns ein Beispiel dafür an, wie Sie einer vorhandenen Tabelle in PostgreSQL mit der Anweisung ALTER TABLE eine Unique Constraints hinzufügen.

In diesem Beispiel haben wir eine Unique Constraints für die vorhandene Tabelle order_details mit dem Namen order_unique erstellt. Es besteht aus dem Feld order_id.
Wir könnten auch eine Unique Constraints mit mehr als einem Feld erstellen, wie im folgenden Beispiel gezeigt:

Löschen Sie die Unique Constraints

Die Syntax zum Löschen einer Unique Constraints in PostgreSQL lautet:

ALTER TABLE Tabellenname
DROP CONSTRAINT constraint_name;
Tabellenname
Der Name der zu ändernden Tabelle. Dies ist die Tabelle, aus der Sie die Unique Constraints entfernen möchten.
constraint_name
Der Name der Unique Constraints, die entfernt werden soll.

Beispiel

Schauen wir uns ein Beispiel an, wie eine Unique Constraints aus einer Tabelle in PostgreSQL entfernt wird.

In diesem Beispiel löschen wir eine Unique Constraints für die Tabelle order_details mit dem Namen order_unique.